Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sharding proxy xa transaction #940

Merged
merged 91 commits into from
Jun 19, 2018
Merged

Sharding proxy xa transaction #940

merged 91 commits into from
Jun 19, 2018

Conversation

cherrylzhao
Copy link
Member

commit for swarding-proxy xa transaction branch.

  • modify sharding-proxy-SQLExecuteWorker for xa(ensure get all routed connection before multi-thread executed)
  • modify sharding-proxy resource manage model.
  • close connection when insert/update/delete executed for sharding-proxy.
  • modify StatementExecuteWorker for reuse transaction of xa.
  • refactor StatementExecutor concern function
  • intercept ddl command of sharding-proxy within xa transaction

# Conflicts:
#	sharding-proxy/pom.xml
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/backend/common/SQLExecuteBackendHandler.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/text/fieldlist/ComFieldListPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/text/query/ComQueryPacket.java
# Conflicts:
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/backend/common/SQLExecuteBackendHandler.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/config/RuleRegistry.java
#	sharding-proxy/src/main/resources/conf/sharding-config.yaml
# Conflicts:
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/Bootstrap.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/backend/common/SQLExecuteBackendHandler.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/config/RuleRegistry.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/frontend/ShardingProxy.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/frontend/mysql/MySQLFrontendHandler.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/metadata/ProxyShardingMetaData.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/MySQLPacketPayload.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/CommandPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/CommandPacketFactory.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/text/fieldlist/ComFieldListPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/text/query/ComQueryPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/generic/EofPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/generic/ErrPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/generic/OKPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/handshake/HandshakeResponse41Packet.java
#	sharding-proxy/src/main/resources/conf/config.yaml
#	sharding-proxy/src/main/resources/logback.xml
# Conflicts:
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/Bootstrap.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/backend/common/SQLExecuteBackendHandler.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/config/RuleRegistry.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/frontend/ShardingProxy.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/frontend/mysql/MySQLFrontendHandler.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/metadata/ProxyShardingMetaData.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/MySQLPacketPayload.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/CommandPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/CommandPacketFactory.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/text/fieldlist/ComFieldListPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/command/text/query/ComQueryPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/generic/EofPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/generic/ErrPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/generic/OKPacket.java
#	sharding-proxy/src/main/java/io/shardingjdbc/proxy/transport/mysql/packet/handshake/HandshakeResponse41Packet.java
#	sharding-proxy/src/main/resources/conf/config.yaml
#	sharding-proxy/src/main/resources/logback.xml
# Conflicts:
#	sharding-proxy/pom.xml
#	sharding-proxy/src/main/java/io/shardingsphere/proxy/transport/mysql/packet/command/text/fieldlist/ComFieldListPacket.java
#	sharding-proxy/src/main/java/io/shardingsphere/proxy/transport/mysql/packet/command/text/query/ComQueryPacket.java
# Conflicts:
#	sharding-proxy/pom.xml
#	sharding-proxy/src/main/java/io/shardingsphere/proxy/transport/mysql/packet/command/text/fieldlist/ComFieldListPacket.java
#	sharding-proxy/src/main/java/io/shardingsphere/proxy/transport/mysql/packet/command/text/query/ComQueryPacket.java
terrymanu and others added 29 commits June 13, 2018 21:11
infinite looping is not necessary
…l at first time.

optimize ExecuteWorker, delete master-slave judge logic.
…into sharding-proxy-xa-transaction

# Conflicts:
#	sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/common/SQLExecuteBackendHandler.java
#	sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/common/SQLExecuteWorker.java
#	sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/common/StatementExecuteWorker.java
#	sharding-proxy/src/main/java/io/shardingsphere/proxy/transport/mysql/packet/command/text/query/ComQueryPacket.java
@cherrylzhao cherrylzhao merged commit b1c5b5c into apache:sharding-proxy-xa-transaction Jun 19, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants