You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by "kevinjqliu (via GitHub)" <gi...@apache.org> on 2026/09/25 04:08:53 UTC
[PR] Use RustFS readiness healthcheck and drop redundant settings [iceberg-python]
kevinjqliu opened a new pull request, #4017:
URL: https://github.com/apache/iceberg-python/pull/4017
# Rationale for this change
Follow up to apache/iceberg#18246. This brings the RustFS setup here in line with the other Iceberg repos (iceberg, iceberg-rust, iceberg-go, iceberg-cpp) so they all behave the same way.
- Healthcheck on `/health/ready` instead of `/health`. `/health` is just liveness and can return 200 before storage/IAM are ready, so the `aws-cli` bucket creation can race it.
- Set `RUSTFS_OBS_LOG_STDOUT_ENABLED=true`. It defaults to false and the image logs to `/logs`, so `docker logs` is empty otherwise, which makes CI failures hard to debug.
- Drop `RUSTFS_VOLUMES`, `RUSTFS_ADDRESS`, `RUSTFS_CONSOLE_ENABLE`, and `RUSTFS_CONSOLE_ADDRESS`. They're already the defaults in 1.0.0.
## Are these changes tested?
Tested with `docker compose config` and by running `rustfs/rustfs:1.0.0` with this config: `/health/ready` returns 200 and logs show up in `docker logs`.
## Are there any user-facing changes?
No.
---
**AI Disclosure**
- Model: Claude Opus 5.5
- Platform/Tool: GitHub Copilot
- Human Oversight: [unknown - human to fill in]
- Prompt Summary: Align RustFS docker compose config with the other Iceberg repos
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] Infra: Standardize RustFS setup across Iceberg repos [iceberg-python]
Posted by "kevinjqliu (via GitHub)" <gi...@apache.org>.
kevinjqliu merged PR #4017:
URL: https://github.com/apache/iceberg-python/pull/4017
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] Infra: Standardize RustFS setup across Iceberg repos [iceberg-python]
Posted by "rambleraptor (via GitHub)" <gi...@apache.org>.
rambleraptor commented on PR #4017:
URL: https://github.com/apache/iceberg-python/pull/4017#issuecomment-6372103132
@Fokko @kevinjqliu - kicked out of merge queue. which is strange, because it's showing that the merge queue passed all the checks?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] Infra: Standardize RustFS setup across Iceberg repos [iceberg-python]
Posted by "kevinjqliu (via GitHub)" <gi...@apache.org>.
kevinjqliu commented on code in PR #4017:
URL: https://github.com/apache/iceberg-python/pull/4017#discussion_r4328594381
##########
dev/docker-compose-integration.yml:
##########
@@ -62,27 +62,24 @@ services:
- CATALOG_S3_ENDPOINT=http://object-store:9000
- CATALOG_JDBC_STRICT__MODE=true
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
networks:
iceberg_net:
aliases:
- warehouse.object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
+ - RUSTFS_CONSOLE_ENABLE=false
Review Comment:
removes console port 9001, we dont need it
##########
dev/docker-compose-integration.yml:
##########
@@ -62,27 +62,24 @@ services:
- CATALOG_S3_ENDPOINT=http://object-store:9000
- CATALOG_JDBC_STRICT__MODE=true
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
networks:
iceberg_net:
aliases:
- warehouse.object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
Review Comment:
show logs in CI
##########
dev/docker-compose-integration.yml:
##########
@@ -62,27 +62,24 @@ services:
- CATALOG_S3_ENDPOINT=http://object-store:9000
- CATALOG_JDBC_STRICT__MODE=true
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
networks:
iceberg_net:
aliases:
- warehouse.object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
+ - RUSTFS_CONSOLE_ENABLE=false
# Resolves virtual-hosted-style `warehouse.object-store` to the warehouse
# bucket.
- RUSTFS_SERVER_DOMAINS=object-store
healthcheck:
- test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health"]
+ test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health/ready"]
Review Comment:
The RustFS [Status Check docs](https://docs.rustfs.com/en/operations/status-check) define the two endpoints differently:
- `/health` is a liveness check. It returns 200 "as long as the process is up".
- `/health/ready` is a readiness check. It returns 200 "only when storage, IAM, and peer health are ready", and 503 otherwise.
##########
dev/docker-compose-integration.yml:
##########
@@ -62,27 +62,24 @@ services:
- CATALOG_S3_ENDPOINT=http://object-store:9000
- CATALOG_JDBC_STRICT__MODE=true
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
networks:
iceberg_net:
aliases:
- warehouse.object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
Review Comment:
these are all defaults, can remove
##########
dev/docker-compose.yml:
##########
@@ -17,20 +17,17 @@
services:
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
Review Comment:
these are all defaults, can remove
##########
dev/docker-compose.yml:
##########
@@ -17,20 +17,17 @@
services:
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
+ - RUSTFS_CONSOLE_ENABLE=false
Review Comment:
removes console port 9001, we dont need it
##########
dev/docker-compose.yml:
##########
@@ -17,20 +17,17 @@
services:
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
+ - RUSTFS_CONSOLE_ENABLE=false
healthcheck:
- test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health"]
+ test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health/ready"]
Review Comment:
The RustFS [Status Check docs](https://docs.rustfs.com/en/operations/status-check) define the two endpoints differently:
- `/health` is a liveness check. It returns 200 "as long as the process is up".
- `/health/ready` is a readiness check. It returns 200 "only when storage, IAM, and peer health are ready", and 503 otherwise.
##########
dev/docker-compose.yml:
##########
@@ -17,20 +17,17 @@
services:
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
Review Comment:
show logs in CI
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] Infra: Standardize RustFS setup across Iceberg repos [iceberg-python]
Posted by "kevinjqliu (via GitHub)" <gi...@apache.org>.
kevinjqliu commented on code in PR #4017:
URL: https://github.com/apache/iceberg-python/pull/4017#discussion_r4328594431
##########
dev/docker-compose.yml:
##########
@@ -17,20 +17,17 @@
services:
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
Review Comment:
these are all defaults, can remove
##########
dev/docker-compose.yml:
##########
@@ -17,20 +17,17 @@
services:
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
+ - RUSTFS_CONSOLE_ENABLE=false
healthcheck:
- test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health"]
+ test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health/ready"]
Review Comment:
The RustFS [Status Check docs](https://docs.rustfs.com/en/operations/status-check) define the two endpoints differently:
- `/health` is a liveness check. It returns 200 "as long as the process is up".
- `/health/ready` is a readiness check. It returns 200 "only when storage, IAM, and peer health are ready", and 503 otherwise.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] Infra: Standardize RustFS setup across Iceberg repos [iceberg-python]
Posted by "kevinjqliu (via GitHub)" <gi...@apache.org>.
kevinjqliu commented on code in PR #4017:
URL: https://github.com/apache/iceberg-python/pull/4017#discussion_r4328594398
##########
dev/docker-compose.yml:
##########
@@ -17,20 +17,17 @@
services:
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
Review Comment:
show logs in CI
##########
dev/docker-compose.yml:
##########
@@ -17,20 +17,17 @@
services:
object-store:
- image: rustfs/rustfs:1.0.0
+ image: rustfs/rustfs:1.0.3
container_name: pyiceberg-object-store
ports:
- - 9001:9001
- 9000:9000
environment:
- RUSTFS_ACCESS_KEY=admin
- RUSTFS_SECRET_KEY=password
- - RUSTFS_VOLUMES=/data
- - RUSTFS_ADDRESS=:9000
- - RUSTFS_CONSOLE_ENABLE=true
- - RUSTFS_CONSOLE_ADDRESS=:9001
+ - RUSTFS_OBS_LOG_STDOUT_ENABLED=true
+ - RUSTFS_CONSOLE_ENABLE=false
Review Comment:
removes console port 9001, we dont need it
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org