diff --git a/plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/InternalIcebergConnectorFactory.java b/plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/InternalIcebergConnectorFactory.java index 7a2debd85055..94e79a07620d 100644 --- a/plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/InternalIcebergConnectorFactory.java +++ b/plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/InternalIcebergConnectorFactory.java @@ -35,6 +35,8 @@ import io.trino.plugin.hive.azure.HiveAzureModule; import io.trino.plugin.hive.gcs.HiveGcsModule; import io.trino.plugin.hive.metastore.HiveMetastore; +import io.trino.plugin.hive.rubix.RubixEnabledConfig; +import io.trino.plugin.hive.rubix.RubixModule; import io.trino.plugin.hive.s3.HiveS3Module; import io.trino.plugin.iceberg.catalog.IcebergCatalogModule; import io.trino.spi.NodeManager; @@ -57,6 +59,7 @@ import java.util.Set; import static com.google.inject.Scopes.SINGLETON; +import static io.airlift.configuration.ConditionalModule.conditionalModule; public final class InternalIcebergConnectorFactory { @@ -89,6 +92,7 @@ public static Connector createConnector( fileIoProvider .map(provider -> binder -> binder.bind(FileIoProvider.class).toInstance(provider)) .orElse(binder -> binder.bind(FileIoProvider.class).to(HdfsFileIoProvider.class).in(SINGLETON)), + conditionalModule(RubixEnabledConfig.class, RubixEnabledConfig::isCacheEnabled, new RubixModule()), binder -> { binder.bind(NodeVersion.class).toInstance(new NodeVersion(context.getNodeManager().getCurrentNode().getVersion())); binder.bind(NodeManager.class).toInstance(context.getNodeManager());