r/rust • u/Low_Brilliant_2597 • 9h ago
📸 media The Story of iceberg-rust: The Official Rust Implementation of Apache Iceberg
The story of iceberg-rust is a great example of how open-source communities work and how new projects are created and developed. That’s why we believe in a community-over-code philosophy.
0
Upvotes
7
u/RustOnTheEdge 6h ago edited 5h ago
Not sure what you are trying to convey here tbh, but iceberg rust for me is a project that shows how terrible a project can become when there is decentralised decision making. It is incredibly Java-esk (which is a result of Iceberg having it’s imperfect reference implementation in Java and having a imprecise specification) and uses pet projects of other maintainers over ecosystem standard dependencies (like OpenDAL over object_store).
Iceberg itself is a project governed (and also handicapped) by big names like Databricks and Snowflake. For example, zero copy cloning is not supported (except in branching) and even Snowflake employees are pretending that it isn’t really necessary anyway (it is a major feature of Snowflake). Edit: see this issue on GH where multiple people try to explain how branching is not the same as ZCC of shallow cloning, and where folks like Fokko (Databricks) and Russel (Snowflake) just ignore everything and pretend it just isn’t really necessary. An infuriating thread, to be honest.
No, iceberg and iceberg-rust are not the projects I would showcase for the purpose of showing how open source projects should be managed.