This is an automated email from the ASF dual-hosted git repository.
wgtmac pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg-cpp.git
The following commit(s) were added to refs/heads/main by this push:
new ce262f54 docs: document Table thread safety (#1094)
ce262f54 is described below
commit ce262f54ca1aab4bfacc5ccfc8a1a1716160496f
Author: Sreesh Maheshwar <[email protected]>
AuthorDate: Thu Nov 5 06:52:35 2026 +0000
docs: document Table thread safety (#1094)
Co-authored-by: Claude Opus 5.5 <[email protected]>
---
src/iceberg/table.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/iceberg/table.h b/src/iceberg/table.h
index 50e6aa8f..3a5f0704 100644
--- a/src/iceberg/table.h
+++ b/src/iceberg/table.h
@@ -39,6 +39,9 @@
namespace iceberg {
/// \brief Represents an Iceberg table
+///
+/// Safe to read from several threads, but not while one of them commits
through it
+/// or calls Refresh().
class ICEBERG_EXPORT Table : public std::enable_shared_from_this<Table> {
public:
/// \brief Construct a table.
@@ -143,6 +146,9 @@ class ICEBERG_EXPORT Table : public
std::enable_shared_from_this<Table> {
Result<std::unique_ptr<LocationProvider>> location_provider() const;
/// \brief Refresh the current table metadata
+ ///
+ /// Invalidates references returned by accessors such as properties().
Commits made
+ /// through this table call it when they retry.
virtual Status Refresh();
/// \brief Create a new table scan builder for this table