diff --git a/kernel/transaction/api/src/main/java/org/apache/shardingsphere/transaction/spi/ShardingSphereDistributionTransactionManager.java b/kernel/transaction/api/src/main/java/org/apache/shardingsphere/transaction/spi/ShardingSphereDistributionTransactionManager.java index 10af750eb62a4..aaf1a69e92c32 100644 --- a/kernel/transaction/api/src/main/java/org/apache/shardingsphere/transaction/spi/ShardingSphereDistributionTransactionManager.java +++ b/kernel/transaction/api/src/main/java/org/apache/shardingsphere/transaction/spi/ShardingSphereDistributionTransactionManager.java @@ -94,9 +94,7 @@ public interface ShardingSphereDistributionTransactionManager extends TypedSPI, * @param providerType transaction manager provider type * @return contains provider type or not */ - default boolean containsProviderType(final String providerType) { - return true; - } + boolean containsProviderType(String providerType); /** * Close transaction manager. diff --git a/kernel/transaction/core/src/test/java/org/apache/shardingsphere/transaction/core/fixture/ShardingSphereTransactionManagerFixture.java b/kernel/transaction/core/src/test/java/org/apache/shardingsphere/transaction/core/fixture/ShardingSphereTransactionManagerFixture.java index cddf6f38cb70d..29ba9d3f20f19 100644 --- a/kernel/transaction/core/src/test/java/org/apache/shardingsphere/transaction/core/fixture/ShardingSphereTransactionManagerFixture.java +++ b/kernel/transaction/core/src/test/java/org/apache/shardingsphere/transaction/core/fixture/ShardingSphereTransactionManagerFixture.java @@ -69,6 +69,11 @@ public void commit(final boolean rollbackOnly) { public void rollback() { } + @Override + public boolean containsProviderType(final String providerType) { + return true; + } + @Override public void close() { } diff --git a/kernel/transaction/distsql/handler/src/test/java/org/apache/shardingsphere/transaction/distsql/handler/fixture/ShardingSphereTransactionManagerFixture.java b/kernel/transaction/distsql/handler/src/test/java/org/apache/shardingsphere/transaction/distsql/handler/fixture/ShardingSphereTransactionManagerFixture.java index 4ec73df212d98..7a7fb42d48c21 100644 --- a/kernel/transaction/distsql/handler/src/test/java/org/apache/shardingsphere/transaction/distsql/handler/fixture/ShardingSphereTransactionManagerFixture.java +++ b/kernel/transaction/distsql/handler/src/test/java/org/apache/shardingsphere/transaction/distsql/handler/fixture/ShardingSphereTransactionManagerFixture.java @@ -69,6 +69,11 @@ public void commit(final boolean rollbackOnly) { public void rollback() { } + @Override + public boolean containsProviderType(final String providerType) { + return true; + } + @Override public void close() { } diff --git a/kernel/transaction/type/base/seata-at/src/main/java/org/apache/shardingsphere/transaction/base/seata/at/SeataATShardingSphereTransactionManager.java b/kernel/transaction/type/base/seata-at/src/main/java/org/apache/shardingsphere/transaction/base/seata/at/SeataATShardingSphereTransactionManager.java index e982fa492209b..0f4a4c4526404 100644 --- a/kernel/transaction/type/base/seata-at/src/main/java/org/apache/shardingsphere/transaction/base/seata/at/SeataATShardingSphereTransactionManager.java +++ b/kernel/transaction/type/base/seata-at/src/main/java/org/apache/shardingsphere/transaction/base/seata/at/SeataATShardingSphereTransactionManager.java @@ -145,6 +145,11 @@ private void checkSeataATEnabled() { ShardingSpherePreconditions.checkState(enableSeataAT, SeataATDisabledException::new); } + @Override + public boolean containsProviderType(final String providerType) { + return true; + } + @Override public void close() { dataSourceMap.clear(); diff --git a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/XAShardingSphereTransactionManager.java b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/XAShardingSphereTransactionManager.java index 224412a8e5402..1daa59adeea61 100644 --- a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/XAShardingSphereTransactionManager.java +++ b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/XAShardingSphereTransactionManager.java @@ -134,17 +134,6 @@ public void rollback() { xaTransactionManagerProvider.getTransactionManager().rollback(); } - @Override - public void close() { - for (XATransactionDataSource each : cachedDataSources.values()) { - each.close(); - } - cachedDataSources.clear(); - if (null != xaTransactionManagerProvider) { - xaTransactionManagerProvider.close(); - } - } - @Override public boolean containsProviderType(final String providerType) { try { @@ -156,6 +145,17 @@ public boolean containsProviderType(final String providerType) { } + @Override + public void close() { + for (XATransactionDataSource each : cachedDataSources.values()) { + each.close(); + } + cachedDataSources.clear(); + if (null != xaTransactionManagerProvider) { + xaTransactionManagerProvider.close(); + } + } + @Override public String getType() { return TransactionType.XA.name();