Skip to main content
Version: v2.1

Downloads

Seata

GitHub: https://github.com/apache/incubator-seata

Release Notes: https://github.com/apache/incubator-seata/releases

2.1.0 (2024-09-05)

source | binary

Release notes

Seata 2.1.0

Seata 2.1.0 Released

Seata is an easy-to-use, high-performance, open source distributed transaction solution.

The version is updated as follows:

feature:

  • [#6370] seata saga decouple spring, optimize architecture.
  • [#6205] mock server
  • [#6169] full support for states in the refactored state machine designer
  • [#6230] RocketMQ transaction are supported
  • [#6326] support raft node metadata sync
  • [#6415] support autolayout in seata-statemachine-designer

bugfix:

  • [#6090] fix the TCC aspect exception handling process, do not wrapping the internal call exceptions
  • [#6075] fix missing table alias for on update column of image SQL
  • [#6086] fix oracle column alias cannot find
  • [#6085] fix jdk9+ compile error
  • [#6101] fix the consumer can't generate tcc proxy in dubbo 3.x version
  • [#6077] fix could not rollback when table with multiple primary
  • [#6121] fix the branch transaction order error when rolling back
  • [#6182] fix guava-32.0.0-jre.jar zip file is empty in ci
  • [#6196] fix asf config file format error
  • [#6143] gracefully shut down the server
  • [#6204] fix the problem that The incorrect configuration needs to be fixed
  • [#6248] fix JDBC resultSet, statement, connection closing order
  • [#6261] AT mode support the URL of a PGSQL cluster
  • [#6256] fix raft-discovery cannot read registry configuration for seata-all sdk
  • [#6232] convert to utf8mb4 if mysql column is json type
  • [#6278] fix ProtocolV1SerializerTest failed
  • [#6324] fix Parse protocol file failed
  • [#6331] fixed the problem that TCC nested transactions cannot add TwoPhaseBusinessAction and GlobalTransactional annotations at the same time
  • [#6354] fix dynamic degradation does not work properly
  • [#6363] fix known problems of docker image
  • [#6372] fix initializing the sql file postgresql.sql index name conflict
  • [#6380] fix sql exception when checking for the existence of the UNDO_LOG table on SQL server
  • [#6385] fix the bug where Role.participant does not execute hooks but clears them.
  • [#6465] fix(6257): fix saga mode replay context lost start in 2.x
  • [#6469] fix Error in insert sql of [lock_table] data table to sqlserver database
  • [#6496] fix XA did not rollback but close when executing a long-running SQL(or deadlock SQL)
  • [#6493] fix SQLServer-related SQL error in seata server when using database of SQLServer
  • [#6497] fix tcc properties class when autoconfigure
  • [#6554] fix unfixed serializer
  • [#6555] businessActionContext is compatible with io seata
  • [#6553] fix saga "cannot matching status"
  • [#6575] fix io.seata ActionInterceptorHandler use org.apache.seata BusinessActionContextParameter

optimize:

  • [#6031] add a check for the existence of the undolog table
  • [#6089] modify the semantics of RaftServerFactory and remove unnecessary singleton
  • [#4473] rm appdata size limit
  • [#6071] add git infos to jars
  • [#6042] add secure authentication to interfaces in ClusterController
  • [#6091] Optimizing the method of obtaining the tc address during raft authentication
  • [#6098] optimize the retry logic in the acquireMetadata method
  • [#6034] using namespace from command line when deployment with helm charts
  • [#6116] remove lgtm.com stuff
  • [#6148] support Nacos ram role authentication
  • [#6145] upgrade jettison to 1.5.4
  • [#6164] redis registry push empty protection optimize
  • [#6174] add ASF basic config
  • [#6181] update contributing doc
  • [#6179] remove @author info
  • [#6176] update source header
  • [#6178] update the header of Apache License
  • [#6186] update README.md(update mailing list and repository urls)
  • [#6184] update NOTICE file
  • [#6192] remove the useless file
  • [#6194] fix asf.yaml parse error
  • [#5399] optimizing branch register resource only at RM server end
  • [#6154] console log optimize for "kubectl logs -f"
  • [#6116] rewrite NettyPoolKey's hashcode and equals to fix duplicate construction of channel object pools
  • [#6195] update the url in change log to apache/incubator-seata
  • [#6200] cancel required_status_checks
  • [#6201] restore required_status_checks kept to remove context validation
  • [#6218] remove Seata-Docker link
  • [#6227] validate that the primary key is free of illegal characters
  • [#6004] optimize RM TM startup connect server fail fast
  • [#6243] optimize links in the console header
  • [#6238] optimize some files
  • [#6239] update security policy, disclaimer and notice
  • [#6245] in file mode, the configuration in the application takes effect, when the spring configuration in the configuration center is changed
  • [#6247] optimize asf.yml
  • [#6259] modify error message which is global session size more than config
  • [#6264] fix jib-maven-plugin build failed
  • [#6246] build the frontend at the same time as the maven build
  • [#6268] optimize outdate npmjs dependencies in console
  • [#6271] unifty the git information
  • [#6265] optimization fails to build frontend on arm64
  • [#6267] add Server deserialization validation
  • [#6275] optimize the label's format in .asf.yaml
  • [#6291] seata-server is developed in idea and console support output logs
  • [#6283] add a compatible module to support io.seata APIs
  • [#6294] split the frontend resource build process into separate profiles
  • [#6285] optimize time query conditions in the console
  • [#6297] fix problem of maven-pmd-plugin
  • [#6298] repackage name to org.apache.seata
  • [#6302] add io.seata package shade
  • [#6306] replace some URL to org/apache/seata
  • [#6304] disable Publish OSSRH workflow
  • [#6310] seata-server compatible io.seata package
  • [#6301] upgrade console frontend dependencies and supported nodejs versions
  • [#6301] add saga related io.seata compatible api
  • [#6313] console display the version number
  • [#6315] compatible with lower versions of SPI
  • [#6327] compatible with integration.http and integration.http.Jakarta
  • [#6328] compatible with integration.grpc
  • [#6330] remove mariadb API
  • [#6329] add saga subcomponent-level io.seata compatible api
  • [#6254] optimize Hessian Serialize
  • [#6332] remove mysql dependency from the distribution package
  • [#6343] compatible with tm module and rm-datasource module
  • [#6357] optimize serialization/deserialization of protocol codec
  • [#6345] compatible with tcc module
  • [#6356] remove authentication from the health check page
  • [#6360] optimize 401 issues for some links
  • [#6366] optimized globaltransaction compatibility issues
  • [#6369] optimize arm64 ci
  • [#6386] replace byte-buddy to JDK proxy in ConfigurationCache
  • [#6391] forbid duplicate registration of TCC resources
  • [#6393] determine the version before sync metadata and add retry mechanism
  • [#6387] optimize tcc use compatible
  • [#6402] optimize rm-datasource use compatible
  • [#6403] optimize config compatible module
  • [#6419] optimize integration-tx-api compatible
  • [#6427] support spi、saga、spring module compatible
  • [#6442] clarify if conditions
  • [#6487] fix typo and package name
  • [#6442] clarify if conditions
  • [#6405] fix kotlin compile failure
  • [#6412] optimize core compatible module
  • [#6429] remove repetitive words
  • [#6518] optimize ConfigurationCache proxy method
  • [#6458] add null value check for MAC address
  • [#6516] optimize code format
  • [#6529] optimize release maven plugin
  • [#6548] upgrade the byte-buddy version to 1.14.15
  • [#6539] add subcomponents license
  • [#6540] exclude com.google.guava:listenablefuture
  • [#6549] macos workflow support arm testing
  • [#6558] remove mysql-connector-java from pom.xml
  • [#6570] add notice file to binary
  • [#6578] registry.conf supplemented raft configuration
  • [#6576] remove oracle datatype parser
  • [#6583] optimize the default compilation to be independent of the Git Env
  • [#6585] optimize compatible module pom.xml
  • [#6597] remove binary from source code
  • [#6605] revised the license and notice
  • [#6609] revised the notice file
  • [#6610] revised the notice file

security:

  • [#6069] Upgrade Guava dependencies to fix security vulnerabilities
  • [#6145] upgrade jettison to 1.5.4
  • [#6144] upgrade nacos client to 1.4.6
  • [#6147] upgrade kafka-clients to 3.6.1
  • [#6339] upgrade spring mvc and tomcat.embed
  • [#6340] upgrade and tidy some dependencies
  • [#6350] remove enableDegrade properties
  • [#6349] transfer dockerhub repo
  • [#6362] upgrade Spring related dependence
  • [#6375] override console nested dependencies

test:

  • [#6081] add test-os.yml for testing the OS
  • [#6125] unbind xid in TransactionTemplateTest
  • [#6157] increase common module unit test coverage
  • [#6250] increase seata-core module unit test coverage
  • [#6325] fix mockServerTest fail cause using same port with seata-server
  • [#6430] increase common module unit test coverage
  • [#6456] adjust the test cases related to dynamic configuration
  • [#6466] support redis integration testing
  • [#6484] fix FileConfigurationTest and MockServerTest fail
  • [#6545] fix TestConfigCustomSPI compatibility test fail
  • [#6560] fix mock-server test, do not shutdown in Runtime.getRuntime().addShutdownHook
  • [#6565] fix testCompensationStateMachine fail

refactor:

  • [#6280] refactor Saga designer using diagram-js
  • [#6269] standardize Seata Exception
  • [#6420] refactor Configuration Cache

Thanks to these contributors for their code commits. Please report an unintended omission.

Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.