This is an automated email from the ASF dual-hosted git repository. ppa pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/ignite-3.git
The following commit(s) were added to refs/heads/main by this push: new b9a25a0b18 IGNITE-19187 Sql. Handle StorageRebalanceException during rowsCount estimation (#1915) b9a25a0b18 is described below commit b9a25a0b18978f0d792d7e0c64b54d7b13cbfcdd Author: Pavel Pereslegin <xxt...@gmail.com> AuthorDate: Mon Apr 10 17:33:10 2023 +0300 IGNITE-19187 Sql. Handle StorageRebalanceException during rowsCount estimation (#1915) --- .../ignite/internal/sql/engine/schema/IgniteTableImpl.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/schema/IgniteTableImpl.java b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/schema/IgniteTableImpl.java index 8da9c5ab0e..4d3add4a15 100644 --- a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/schema/IgniteTableImpl.java +++ b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/schema/IgniteTableImpl.java @@ -74,6 +74,7 @@ import org.apache.ignite.internal.sql.engine.trait.TraitUtils; import org.apache.ignite.internal.sql.engine.type.IgniteTypeFactory; import org.apache.ignite.internal.sql.engine.util.TypeUtils; import org.apache.ignite.internal.storage.MvPartitionStorage; +import org.apache.ignite.internal.storage.StorageRebalanceException; import org.apache.ignite.internal.table.InternalTable; import org.apache.ignite.internal.table.distributed.TableMessagesFactory; import org.apache.ignite.internal.table.distributed.replicator.TablePartitionId; @@ -547,8 +548,14 @@ public class IgniteTableImpl extends AbstractTable implements IgniteTable, Updat for (int p = 0; p < parts; ++p) { @Nullable MvPartitionStorage part = table.storage().getMvPartition(p); - if (part != null) { + if (part == null) { + continue; + } + + try { size += part.rowsCount(); + } catch (StorageRebalanceException ignore) { + // No-op. } }