Releases: apache/incubator-seata
v2.2.0
Apache Seata(incubating) 2.2.0 Released.
Apache Seata(incubating) is an easy-to-use, high-performance, open source distributed transaction solution.
Download
https://seata.apache.org/unversioned/download/seata-server
The version is updated as follows:
feature:
- [#6536] support naming server client
- [#6226] multi-version seata protocol support
- [#6537] support Namingserver
- [#6538] Integration of naming server on the Seata server side
- [#6766] add TCC three-phase hooks
bugfix:
- [#6592] fix @async annotation not working in ClusterWatcherManager
- [#6624] fix Alibaba Dubbo convert error
- [#6627] fix the issue of xaEnded not being reset
- [#6626] fix hsf ConsumerModel convert error
- [#6816] Fix NPE when getting branchType in a non-global transaction context
- [#6642] codecov token not found
- [#6661] fix
tableMeta
cache scheduled refresh issue - [#6486] fix mysql undo log update sql data more than max allowed packet
- [#6668] thread safety issue when adding and removing instances
- [#6678] fix the same record has different lowkeys due to mixed case of table names yesterday
- [#6697] v0 ByteBuf should not decode by super class
- [#6707] fix readonly branch commit errors in Oracle XA transactions
- [#6711] fix dameng rollback info un compress fail
- [#6714] fix dameng delete undo fail
- [#6511] fix the failure of rollbacking back of the delete SQL at AT mode when using SQLServer
- [#6701] fix support serialization for dm.jdbc.driver.DmdbTimestamp
- [#6757] the bug where multiple nodes cannot be retrieved from the naming server
- [#6769] fix tcc fence deadLock
- [#6778] fix namingserver node term
- [#6765] fix MySQL driver loading by replacing custom classloader with system classloader for better compatibility and simplified process
- [#6781] the issue where the TC occasionally fails to go offline from the NamingServer
- [#6785] fix prometheus fail to return seata metrics data when using Nacos
- [#6797] fall back to any of available cluster address when query cluster address is empty
- [#6800] make exception message generic for all database drivers
- [#6759] fix the error of active refresh failure of cross-database table metadata
- [#6812] bugfix: change group and node offline status are not pushed in real time
- [#6817] bugfix: fix namingserver changVgroup failed
- [#6820] Fix file path error in the Dockerfile
- [#6825] Fix the issue of XA mode transaction timeout and inability to roll back in Postgres
- [#6833] SQLIntegrityConstraintViolationException capture incorrectly when inserting a globallock
- [#6835] Fix the issue of missing request body of post method in HttpClientUtil
- [#6845] fix rocksDB opens the same file multiple times
- [#6840] Fix the issue of unsafe deserialization in ProcessorYaml.java
- [#6843] Fix 403 error when sending a POST request from the console
- [#6850] raft mode is backward compatible with version 2.0
- [#6855] after scaling down a Raft cluster, the metadata still contains the removed node
- [#6859] remove duplicated dependency in pom
optimize:
- [#6499] split the task thread pool for committing and rollbacking statuses
- [#6208] optimize : load SeataSerializer by version
- [#6209] Eliminate RpcMessage and Encoder/Decoder dependencies
- [#6634] select channel handles based on protocol versions
- [#6523] upgrade alibaba/druid version to 1.2.20
- [#6566] Add support for configuring exposeProxy in GlobalTransactionScanner
- [#6534] optimize: send async response
- [#6640] modify codecov config
- [#6640] add license header
- [#6666] add ExceptionUtil class for unwarp error msg
- [#6654] add Namingserver package module
- [#6667] optimize Namingserver log output
- [#6687] delete static code built on the frontend
- [#6700] remove sdk version checking
- [#6727] deserialize performance optimize
- [#6732] add the default console and security config on application.example.yml and application.raft.example.yml
- [#6651] add license header for proto file
- [#6653] optimize multiple licenses and remove license urls
- [#6655] update front-end license
- [#6652] add license header for spring config file
- [#6674] update source license
- [#6650] add license header for SPI file
- [#6741] upgrade tomcat-embed-core to 9.0.90
- [#6742] upgrade npmjs version in console
- [#6743] upgrade npmjs version in saga
- [#6746] optimize compatible dependencies
- [#6745] fix node-gyp build error on arm64 and macos
- [#6749] optimize WebSecurityConfig csrf
- [#6748] optimize ConsistentHashLoadBalance Algorithm
- [#6747] optimize fastjson deserialization
- [#6755] optimize namingserver code logic
- [#6763] optimize NacosConfiguration singleton reload
- [#6761] optimize the namingserver code to improve readability
- [#6768] report the tcc fence transaction isolation level
- [#6770] Automatic deletion of namingserver vgroup through Caffeine map
- [#6780] optimize the reflection operation in class
SerializerServiceLoader
- [#6784] upgrade axios to 1.7.4
- [#6787] upgrade elliptic to 6.5.7
- [#6783] rename the server naming/v1 api to vgroup/v1
- [#6793] fix npmjs conflicts
- [#6793] optimize the initialization logic for server meta
- [#6794] optimize NacosMockTest UT case
- [#6806] optimize
tableMeta
cache sch...
v2.1.0
Apache Seata(incubating) 2.1.0 Released.
Apache Seata(incubating) is an easy-to-use, high-performance, open source distributed transaction solution.
Download
https://seata.apache.org/unversioned/download/seata-server
The version is updated as follows:
feature:
- [#6230] support RocketMQ transaction message
- [#6370] saga is decoupled from Spring dependencies
- [#6205] support mock server
- [#6169] full support for states in the refactored state machine designer
- [#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
- [#6675] fix Alibaba Dubbo convert error
- [#6676] fix hsf ConsumerModel convert error
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](https://github.com/apach...
v2.0.0(Not Apache release)
Seata 2.0.0 Released
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#5165] optimize TCC structure, supporting API access. add integration layer module(seata-integration-tx-api) for transaction process definition and proxy enhancement.
- [#5352] add jackson json parser and gson json parser for tcc business action context
- [#5377] make AbstractHttpExecutor.class support http put
- [#5396] TC log appender metric
- [#5118] support two-stage concurrent notification execution
- [#5529] docker image supports JVM parameter injection
- [#3887] add SQL Server database support in AT mode
- [#4033] add SQLServer support for Server DB storage mode
- [#5600] feature: support trace the transaction link according to the XID
- [#5357] feature: console integration saga-statemachine-designer
- [#5717] compatible with file.conf and registry.conf configurations in version 1.4.2 and below
- [#5842] adding metainfo to docker image
- [#5902] support IPv6
- [#5907] support polardb-x 2.0 in AT mode
- [#5932] support Dameng database
- [#5946] add sqlserver's adaptation to the console paging interface
- [#5226] support raft cluster and store mode
bugfix:
- [#5677] fix saga mode serviceTask inputParams json autoType convert exception
- [#5277] fix server console has queried the released lock
- [#5282] parallel request handle throw IndexOutOfBoundsException
- [#5294] fix auto-increment of pk columns in PostgreSQL/Oracle in AT mode
- [#5298] don't remove GlobalSession when retry rollback or retry commit timeout
- [#5304] remove RollbackRetryTimeout sessions during in file storage recover
- [#5310] fix that keywords don't add escaped characters
- [#5318] fix G1 jvm parameter in jdk8
- [#5330] fix bugs found in unit tests
- [#5337] fix bugs found in feature#5165 about sorting problem of multiple interceptor under the spring used environment, by the way fix the BeforeTransaction(AfterTransaction) transaction ordering problem when the order is consistent
- [#5347] Fix console print
unauthorized error
- [#5355] fix bug when customizing context-path
- [#5362] fix When the rollback logic on the TC side returns RollbackFailed, the custom FailureHandler is not executed
- [#5373] fix transaction timeout on client side not execute hook and failureHandler
- [#5395] check if table meta cache should be refreshed in AT mode
- [#5426] fix the GlobalTransactional annotation npe issue.
- [#5464] fix global session is always begin in saga mode
- [#5478] fix finished transaction swallows exception when committing
- [#5490] fix method name not print in logs
- [#5449] fix Oracle XA transaction reentrant issues
- [#5462] fix if using
@GlobalTransactional
in RM,ShouldNeverHappenException
will be thrown - [#5498] bugfix: fix the full table scan issue with 'setDate' condition in Oracle 10g
- [#5531] fix the log file path was loaded incorrectly
- [#5523] fix GlobalStatus=9 can't be cleared in DB storage mode
- [#5558] fix mariadb rollback failed
- [#5556] fix oracle insert undolog failed
- [#5579] fix RM_CHANNELS get npe when resourceId is empty
- [#5577] fix grpc interceptor xid unbinding problem
- [#5594] fix log in participant transaction role
- [#5604] fix the
asyncCommit
andqueueToRetryCommit
always failed in db mode - [#5658] bugfix: fix escaped characters for upper and lower case column names
- [#5661] bugfix: the timeout is null when the connectionProxyXA connection is reused
- [#5679] bugfix: fix compatibility between xxx.grouplist and grouplist.xxx configuration items
- [#5715] fix get configuration item contains underlined error
- [#5748] case of the pk col-name in the business sql is inconsistent with the case in the table metadata, resulting in a rollback failure
- [#5745] fix the problem that the parameter prefix requirement of the setAttachment method in sofa-rpc is not met
- [#5772] change some fields type of TableMetaCache to avoid integer overflow
- [#5787] Solution cluster cannot be customized when redis serves as the registry
- [#5810] fix XA transaction start exception and rollback failure caused by druid dependency conflict
- [#5821] fix insert executor keywords unescape
- [#5835] bugfix: fix TC retry rollback wrongly, after the XA transaction fail and rollback
- [#5881] fix delete branch table unlock failed
- [#5930] fix the issue of missing sentinel password in store redis mode
- [#5958] required to be unlocked when a re-election occurs in a commit state
- [#5971] fix some configurations that are not deprecated show "Deprecated"
- [#5977] fix that rpcserver is not closed when raftServer is closed
- [#5954] fix the issue of saved branch session status does not match the actual branch session status
- [#5990] fix the issue that the Lua script is not synchronized when the redis sentinel master node is down
- [#5997] fix global transaction hook repeat execute
- [#6018] fix incorrect metric report
- [#6024] fix the white screen after click the "View Global Lock" button on the transaction info page in the console
- [#6015] fix can't integrate dubbo with spring
- [#6049] fix registry type for raft under the network interruption did not carry out the sleep 1s
- [#6050] change RaftServer#destroy to wait all shutdown procedures
- [#6033] fix the isReference judgment logic in HSFRemotingParser, remove unnecessary judgment about FactoryBean
optimize:
- [#5966] decouple saga expression handling and remove evaluator package
- [#5928] add Saga statelang semantic validation
- [#4858] reorganize the usage of task session manager
- [#4881] reorganize the usage of Sessionmanager and listener
- [#5273] Optimize the compilation configuration of the
protobuf-maven-plugin
plug-in to solve the problem of too long command lines in higher versions. - [#5278] clean multi-sessionmanager-instance pattern
- [#5302] remove startup script the -Xmn configuration
- [#4880] optimize logs when commit/rollback catch an exception
- [#5322] optimize the log of SPI
- [#5326] add time info for global transaction timeout log
- [#5328] add corresponding lua implementation for Redis mode of global transaction and transaction storage
- [#5341] optim...
v1.8.0(Not Apache release)
Seata 1.8.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
bugfix:
- [#5833] bugfix: fix TC retry rollback wrongly, after the XA transaction fail and rollback
- [#5884] fix dm escaped characters for upper and lower case column names
- [#5931] fix the issue of missing sentinel password in store redis mode
- [#5970] fix some configurations that are not deprecated show "Deprecated"
optimize:
- [#5866] some minor syntax optimization
- [#5889] remove dependency without license
- [#5890] remove 7z format compression support
- [#5891] remove mariadb.jdbc dependency
- [#5828] fix codecov chart not display
- [#5927] optimize some scripts related to Apollo
- [#5918] standardized the properties of codecov.yml
- [#5939] support jmx port in seata
security:
test:
- [#5888] remove sofa test cases
- [#5831] upgrade druid and add
test-druid.yml
- [#5862] fix unit test in java 21
- [#5914] upgrade native-lib-loader version
- [#5960] fix zookeeper UT failed
- [#5981] fixed jedis version for
seata-server
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.
v1.7.1(Not Apache release)
Seata 1.7.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#5803] docker image supports JVM parameter injection
bugfix:
- [#5749] case of the pk col-name in the business sql is inconsistent with the case in the table metadata, resulting in a rollback failure
- [#5762] change some fields type of TableMetaCache to avoid integer overflow
- [#5769] fix the problem that the parameter prefix requirement of the setAttachment method in sofa-rpc is not met
- [#5814] fix XA transaction start exception and rollback failure
- [#5771] insert executor keywords unescape
- [#5819] fix oracle column alias cannot find
optimize:
- [#5804] optimize docker default timezone
- [#5815] support the nacos application name property
- [#5820] unified log output directory
- [#5822] upgrade some deprecated github actions
security:
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.
v1.7.0(Not Apache release)
Seata 1.7.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#5476] first support
native-image
forseata-client
- [#5495] console integration saga-statemachine-designer
- [#5668] compatible with file.conf and registry.conf configurations in version 1.4.2 and below
bugfix:
- [#5682] fix saga mode replay context lost startParams
- [#5671] fix saga mode serviceTask inputParams json autoType convert exception
- [#5194] fix wrong keyword order for oracle when creating a table
- [#5021] fix JDK Reflection for Spring origin proxy failed in JDK17
- [#5023] fix
seata-core
dependency transitive conflict inseata-dubbo
- [#5224] fix oracle initialize script index_name is duplicate
- [#5233] fix the inconsistent configuration item names related to LoadBalance
- [#5266] fix server console has queried the released lock
- [#5245] fix the incomplete dependency of distribution module
- [#5239] fix
getConfig
throwClassCastException
when use JDK proxy - [#5281] parallel request handle throw IndexOutOfBoundsException
- [#5288] fix auto-increment of pk columns in Oracle in AT mode
- [#5287] fix auto-increment of pk columns in PostgreSQL in AT mode
- [#5299] fix GlobalSession deletion when retry rollback or retry commit timeout
- [#5307] fix that keywords don't add escaped characters
- [#5311] remove RollbackRetryTimeout sessions during in file storage recover
- [#4734] check if table meta cache should be refreshed in AT mode
- [#5316] fix G1 jvm parameter in jdk8
- [#5321] fix When the rollback logic on the TC side returns RollbackFailed, the custom FailureHandler is not executed
- [#5332] fix bugs found in unit tests
- [#5145] fix global session is always begin in saga mode
- [#5413] fix bad service configuration file and compilation failure
- [#5415] fix transaction timeout on client side not execute hook and failureHandler
- [#5447] fix oracle xa mode cannnot be used By same database
- [#5472] fix if using
@GlobalTransactional
in RM,ShouldNeverHappenException
will be thrown - [#5535] fix the log file path was loaded incorrectly
- [#5538] fix finished transaction swallows exception when committing
- [#5539] fix the full table scan issue with 'setDate' condition in Oracle 10g
- [#5540] fix GlobalStatus=9 can't be cleared in DB storage mode
- [#5552] fix mariadb rollback failed
- [#5583] fix grpc interceptor xid unbinding problem
- [#5602] fix log in participant transaction role
- [#5645] fix oracle insert undolog failed
- [#5659] fix the issue of case sensitivity enforcement on the database after adding escape characters to keywords
- [#5663] fix the timeout is null when the connectionProxyXA connection is reused
- [#5675] fix compatibility between xxx.grouplist and grouplist.xxx configuration items
- [#5690] fix console print
unauthorized error
- [#5711] fix get configuration item contains underlined error
optimize:
- [#5208] optimize throwable getCause once more
- [#5212] optimize log message level
- [#5237] optimize exception log message print(EnhancedServiceLoader.loadFile#cahtch)
- [#5089] optimize the check of the delay value of the TCC fence log clean task
- [#5243] optimize kryo 5.4.0 optimize compatibility with jdk17
- [#5153] Only AT mode try to get channel with other app
- [#5177] If
server.session.enable-branch-async-remove
is true, delete the branch asynchronously and unlock it synchronously. - [#5273] optimize the compilation configuration of the
protobuf-maven-plugin
plug-in to solve the problem of too long command lines in higher versions. - [#5303] remove startup script the -Xmn configuration
- [#5325] add store mode,config type and registry type log info
- [#5315] optimize the log of SPI
- [#5323] add time info for global transaction timeout log
- [#5414] optimize transaction fail handler
- [#5537] optimize transaction log on client side
- [#5541] optimize server log output
- [#5548] update expire gpg key and publish workflow
- [#5638] optimize: set server's transaction level to READ_COMMITTED
- [#5646] refactor ColumnUtils and EscapeHandler
- [#5648] optimize server logs print
- [#5647] support case-sensitive attributes for table and column metadata
- [#5678] optimize escape character for case of columnNames
- [#5684] optimize github actions for CodeQL, skywalking-eyes and checkout
- [#5700] optimize distributed lock log
security:
- [#5172] fix some security vulnerabilities
- [#5683] add Hessian Serializer WhiteDenyList
- [#5696] fix several node.js security vulnerabilities
test:
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- xssdpgy
- albumenj
- PeppaO
- yuruixin
- dmego
- CrazyLionLi
- xingfudeshi
- Bughue
- pengten
- wangliang181230
- GoodBoyCoder
- a364176773
- isharpever
- ZhangShiYeChina
- mxsm
- l81893521
- liuqiufeng
- yixia
- jumtp
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
v1.6.1(Not Apache release)
Seata 1.6.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#5115] support for
spring-boot:3.x
bugfix:
- [#5179] fix ClassNotFoundException when server starts using Eureka
optimize:
- [#5120] unify the format of configuration items in yml files
- [#5180] GlobalTransactionScanner,SeataAutoDataSourceProxyCreator declare @bean methods as static
- [#5182] fix some security vulnerabilities in GGEditor
- [#5183] optimize the default values for some switches
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.
v1.6.0(Not Apache release)
Seata 1.6.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#4863] support oracle and postgresql multi primary key
- [#4649] seata-server support multiple registry
- [#4779] support Apache Dubbo3
- [#4479] TCC mode supports tcc annotation marked on both interface and implementation class
- [#4877] seata client support jdk17
- [#4914] support mysql update join sql
- [#4542] support oracle timestamp types
- [#5111] support Nacos contextPath
- [#4802] dockerfile support arm64
bugfix:
- [#4780] fix can't post TimeoutRollbacked event after a successful timeout rollback
- [#4954] fix output expression incorrectly throws npe
- [#4817] fix in high version springboot property not Standard
- [#4838] fix when use Statement.executeBatch() can not generate undo log
- [#4533] fix rollback event repeated and some event status not correct
- [#4912] fix mysql InsertOnDuplicateUpdate column case is different and cannot be matched
- [#4543] fix support Oracle nclob types
- [#4915] fix failed to get server recovery properties
- [#4919] fix XID port and address null:0 before coordinator.init
- [#4928] fix rpcContext.getClientRMHolderMap NPE
- [#4953] fix InsertOnDuplicateUpdate bypass modify pk
- [#4978] fix kryo support circular reference
- [#4874] fix startup failure by using OpenJDK 11
- [#5018] fix loader path in startup scripts
- [#5004] fix duplicate image row for update join
- [#5032] fix mysql InsertOnDuplicateUpdate sql query error caused by placeholder index calculation error
- [#5033] fix null exception when sql columns is empty for insert on duplicate
- [#5038] remove @EnableConfigurationProperties({SagaAsyncThreadPoolProperties.class})
- [#5050] fix global session is not change to Committed in saga mode
- [#5052] fix update join condition placeholder param error
- [#5031] fix mysql InsertOnDuplicateUpdate should not use null index value as image sql query condition
- [#5075] fix InsertOnDuplicateUpdateExecutor could not intercept the sql which has no primary and unique key
- [#5093] fix access key loss after seata server restart
- [#5092] fix when seata and jpa are used together, their AutoConfiguration order is incorrect
- [#5109] fix NPE caused when there is no @GlobalTransactional annotation on the RM side
- [#5098] Druid disable oracle implicit cache
- [#4860] fix metrics tags coverage in the seata-server side
- [#5028] fix insert value null parsed as string in insert on duplicate SQL
- [#5078] fix could not intercept the sql witch has no primary and unique key
- [#5097] fix access key loss after server restart
- [#5131] fix rollback xa connection active state
- [#5134] fix hikari datasource auto proxy fail
- [#5163] fix bad service configuration file and compilation failure
optimize:
- [#4774] optimize mysql8 dependencies for seataio/seata-server image
- [#4790] Add a github action to publish Seata to OSSRH
- [#4765] mysql 8.0.29 not should be hold for connection
- [#4750] optimize unBranchLock romove xid
- [#4797] optimize the github actions
- [#4800] Add NOTICE as Apache License V2
- [#4681] optimize the check lock during global transaction
- [#4761] use hget replace hmget because only one field
- [#4414] exclude log4j dependencies
- [#4836] optimize BaseTransactionalExecutor#buildLockKey(TableRecords rowsIncludingPK) method more readable
- [#4865] fix some security vulnerabilities in GGEditor
- [#4590] auto degrade enable to dynamic configure
- [#4490] tccfence log table delete by index
- [#4911] add license checker workflow
- [#4917] upgrade package-lock.json fix vulnerabilities
- [#4924] optimize pom dependencies
- [#4932] extract the default values for some properties
- [#4925] optimize java doc warning
- [#4921] fix some vulnerabilities in console and upgrade skywalking-eyes
- [#4936] optimize read of storage configuration
- [#4946] pass the sqlexception to client when get lock
- [#4962] optimize build and fix the base image
- [#4974] optimize cancel the limit on the number of globalStatus queries in Redis mode
- [#4981] optimize tcc fence record not exists errMessage
- [#4985] fix undo_log id repeat
- [#4995] fix mysql InsertOnDuplicateUpdate duplicate pk condition in after image query sql
- [#5047] remove useless code
- [#5051] undo log dirty throw BranchRollbackFailed_Unretriable
- [#5075] intercept the InsertOnDuplicateUpdate statement which has no primary key and unique index value
- [#5104] remove the druid dependency in ConnectionProxy
- [#5124] support oracle on delete tccfence logs
- [#4468] support kryo 5.3.0
- [#4807] optimize docker image and oss publish
- [#4445] optimize transaction timeout judgment
- [#4958] do not execute triggerAfterCommit() if timeout
- [#4582] redis mode support sorted set by timeout
- [#4963] add ARM64 CI workflow
- [#4434] remove seata-server's CMS parameters
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- renliangyu857
- wangliang181230
- a364176773
- tuwenlin
- conghuhu
- a1104321118
- duanqiaoyanyu
- robynron
- lcmvs
- github-ganyu
- 1181954449
- zw201913
- wingchi-leung
- AlexStocks
- liujunlin5168
- pengten
- liuqiufeng
- yujianfei1986
- Bughue
- AlbumenJ
- doubleDimple
- jsbxyyx
- tuwenlin
- CrazyLionLi
- whxxxxx
- neillee95
- crazy-sheep
- [zhangzq7](ht...
v1.5.2(Not Apache release)
Seata 1.5.2 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#4661] support xid consistency load balance
- [#4676] support server to expose Nacos services by mounting SLB
- [#4642] support batch message parallel processing
- [#4567] support where method condition(find_in_set)
bugfix:
- [#4515] fix the error of SeataTCCFenceAutoConfiguration when database unused
- [#4661] fix sql exception with PostgreSQL in module console
- [#4667] fix the exception in RedisTransactionStoreManager for update map During iteration
- [#4678] fix the error of key transport.enableRmClientBatchSendRequest cache penetration if not configure
- [#4701] fix missing command line args
- [#4607] fix bug on skipping lock check
- [#4696] fix oracle database insert value
- [#4726] fix batch message send may return NullPointException
- [#4729] fix set AspectTransactional.rollbackForClassName with wrong value
- [#4653] fix the sql exception when pk is non-numeric in INSERT_ON_DUPLICATE SQL
optimize:
- [#4650] fix some security vulnerabilities
- [#4670] optimize the thread pool size of branchResultMessageExecutor
- [#4662] optimize rollback transaction metrics
- [#4693] optimize the console navigation bar
- [#4700] fix maven-compiler-plugin and maven-resources-plugin execute failed
- [#4711] separate lib dependencies for deployments
- [#4720] optimize pom description
- [#4728] upgrade logback dependency to 1.2.9
- [#4745] support mysql8 in release package
- [#4626] Replace
flatten-maven-plugin
witheasyj-maven-plugin
to fix the conflict betweenshade
andflatten
- [#4629] check relation of before status and after status when updating global session
- [#4662] make EnhancedServiceLoader more readable
test:
- [#4544] optimize jackson dependencies in TransactionContextFilterTest
- [#4731] fix UT failed in AsyncWorkerTest and LockManagerTest
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- pengten
- YSF-A
- tuwenlin
- Ifdevil
- wingchi-leung
- liurong
- opelok-z
- a364176773
- 2129zxl
- Smery-lxm
- doubleDimple
- wangliang181230
- Bughue
- AYue-94
- lingxiao-wu
- caohdgege
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
v1.5.1(Not Apache release)
Seata 1.5.1(release fixes for 1.5.0) Released.
seata-all-1.5.0.jar
was released to the central maven repository with version number replacement issues due to plugin conflicts in 1.5.0. As a result, we urgently released version 1.5.1 with code functionality remaining exactly the same as 1.5.0. We are sorry for the confusion and inconvenience.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#4115] support console management
- [#3472] add redisLocker's lua mode
- [#3575] support the mixed use of different storages of locks and sessions
- [#3374] add a Executor for INSERT ON DUPLICATE KEY UPDATE
- [#3642] provide an api to share tcc phase-1's params to phase-2
- [#3064] support configuring the order of the TM and TCC interceptor
- [#2852] support configuring scan target for GlobalTransactionScanner
- [#3683] support redis distributed lock to prevent multi TC competition
- [#3545] TCC mode support idempotent and anti hanging
- [#3009] support server start with springboot and config with application.yaml
- [#3652] support APM with SkyWalking
- [#3823] TCC mode supports customized parameters list of the method in phase two
- [#3642] TCC mode's try method supports passing
BusinessActionContext
implicitly - [#3856] support edas-hsf RPC framework
- [#3880] contributing md support chinese.
- [#2568] support GlobalTransactionInterceptor expression
- [#3886] support the registry center network preferences
- [#3869] support get configuration from environment
- [#3906] support SPI unload
- [#3668] support kotlin coroutine
- [#3968] support brpc-java RPC framework
- [#4134] init the console basic code
- [#4268] query global session in the file mode
- [#4281] query global session and global lock in the redis mode
- [#4293] get global lock in the file mode
- [#4335] Realize configuration center upload configuration interactive script (nacos,etcd3)
- [#4360] Realize configuration center upload configuration interactive script (apollo,consul,zk)
- [#4320] realize the interface of console: get global session and global lock in the db mode
- [#4435] console front-end page implementation
- [#4480] implementation of DefaultAuthSigner
- [#3870] make seata-bom be the real Bill-Of-Material
- [#3487] add db realization for distribute lock
- [#3889] registry add heartbeat
- [#3951] support zstd compressor
- [#2838] Saga support auto configuration in the spring boot project
bugfix:
- [#3497] fix tcc phase two response timeout exception
- [#3686] fix NPE and wrong cluster name of Apollo
- [#3702] fix some comments
- [#3716] fix the problem in the findTargetClass method
- [#3717] fix typo of interval
- [#3773] fix consul not found tc cluster
- [#3695] fix mariadb unable to create XA connection
- [#3783] fix the problem that store mode does not take effect
- [#3740] fix that
LocalThread
is not cleared when theSaga
transaction ends - [#3792] fix the Server can't find redis-host property
- [#3828] fix StringUtils StackOverflowError
- [#3817] fix TC SkyWalking topo calling node not gather
- [#3803] fix ReflectionUtil throw unexpected exception
- [#3879] fix postgresql multi schema throw not found channel exception
- [#3881] fix getConfig with different default value return the first
- [#3897] fix LocalDataTime type in FastjsonUndoLogParser can't be rollback
- [#3901] fix seataio/seata-server servlet-api conflict
- [#3931] fix the wrong path and filename when dump the jvm memory for analysis
- [#3978] fix NPE cause by future timeout
- [#4266] fix register branch and release lock failed when the size of rows that modified is greater than 1000 in oracle
- [#3949] fix the problem that
nacos-config.py
will not skip blank options. fix bug that split options may cause content loss - [#3988] fix the problem that nacos not found user when password has special characters
- [#3998] fix the NPE of jedis multi.exec
- [#4011] fix can not get properties of distributed-lock-table in springboot
- [#4025] fix potential database resource leak
- [#4023] fix the problem that the xid is not cleared in some scenes of dubbo
- [#4039] fix RM did not clear XID after the local transaction threw an exception
- [#4032] fix ApplicationContext already closed problem when Seata server using ShutdownHook to destroy
- [#4074] fix prevents XA mode resource suspension
- [#4107] fix deadlock problems during project construction
- [#4158] fix the logback can't load the
RPC_PORT
- [#4162] fix correct built-in properties for redis registry
- [#4165] fix
StringUtils.toString(obj)
throwClassCastException
when the obj is primitive data array - [#4169] fix xa mode originalConnection has been closed, cause PhaseTwo fail to execute
- [#4177] fix the problem of accidentally releasing the global lock
- [#4174] fix delete undo log connection already closed
- [#4189] fix the
kafka-appender.xml
andlogstash-appender.xml
- [#4213] fix code for "sessionMode" not execute problem
- [#4220] fix some problems with
zstd
compressor and add the version of thekotlin-maven-plugin
- [#4222] fix could not rollback when insert field list is empty
- [#4253] update executor store the actually modified columns but not only the columns in set condition
- [#4276] fix seata-test module UT not work
- [#4278] fix the problem that mysql's Blob/Clob/NClob data type cannot be deserialized
- [#4302] fix the problem that other ORMs may not be able to obtain the auto-incrementing primary key value
- [#4233] fix data remanence problems in lock and branch under specific circumstances.
- [#4308] fix the TableMetaCache parsing problem with the same table under multiple Postgresql schemas
- [#4326] fix inability to build Executor when using mariadb driver
- [#4355] fix mysql-loadbalance resource id error
- [#4310] fix the problem that failed to obtain the self increment ID of MySQL database through "select last_insert_id"
- [#4331] fix dirty write check exce...