seata/seata
 Watch   
 Star   
 Fork   
2023-11-24 11:51:15
seata

v2.0.0

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
  • [#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
  • [#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 in seata-dubbo
  • [#5224] fix oracle initialize script index_name is duplicate
  • [#5233] fix the inconsistent configuration item names related to LoadBalance
  • [#5245] fix the incomplete dependency of distribution module
  • [#5239] fix getConfig throw ClassCastException when use JDK proxy
  • [#5266] 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
  • [#5372] fix transaction timeout on client side not execute hook and failureHandler
  • [#4734] 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
  • [#5491] fix method name not print in logs
  • [#5449] fix Oracle XA transaction reentrant issues
  • [#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 and queueToRetryCommit always failed in db mode
  • [#5661] bugfix: the timeout is null when the connectionProxyXA connection is reused
  • [#5678] 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
  • [#5887] 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 done

optimize:

  • [#6033] optimize the isReference judgment logic in HSFRemotingParser, remove unnecessary judgment about FactoryBean
  • [#5966] decouple saga expression handling and remove evaluator package
  • [#5928] add Saga statelang semantic validation
  • [#5208] optimize throwable getCause once more
  • [#5212] optimize log message level
  • [#5237] optimize exception log message print(EnhancedServiceLoader.loadFile#cahtch)
  • [#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.
  • [#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
  • [#5323] add time info for global transaction timeout log
  • [#5328] add corresponding lua implementation for Redis mode of global transaction and transaction storage
  • [#5341] optimize gRPC Interceptor for TCC mode
  • [#5342] optimize the check of the delay value of the TCC fence log clean task
  • [#5325] add store mode,config type and registry type log info
  • [#5351] optimize RPC filter for TCC mode
  • [#5354] reconstruct the RPC integration module
  • [#5370] optimize transaction fail handler
  • [#5461] optimize license workflow
  • [#5456] refactor ColumnUtils and EscapeHandler
  • [#5438] optimize code style properties
  • [#5471] optimize transaction log on client side
  • [#5485] optimize server log output
  • [#4907] optimize thread scheduling and code
  • [#5487] mark the lockholder of branchsession as final
  • [#5519] optimize FenceHandler for oracle
  • [#5501] support updating transaction state with optimistic locking
  • [#5419] optimize images based on java 8/17 and support maven-3.9.0
  • [#5549] update expire gpg key and publish workflow
  • [#5576] The common fence clean task is only initiated when useTCCFence is set to true
  • [#5623] optimize possible conflict between asyncCommitting thread and retryCommitting thread
  • [#5553] support case-sensitive attributes for table and column metadata
  • [#5644] optimize server logs print
  • [#5680] optimize escape character for case of columnNames
  • [#5714] optimize distributed lock log
  • [#5723] optimize docker default timezone
  • [#5779] remove unnecessary log outputs and unify the log output path.
  • [#5802] set server's transaction level to READ_COMMITTED
  • [#5783] support the nacos application name property
  • [#5524] support for more operational commands in seata-server.sh
  • [#5836] separate MySQL from Mariadb implementations
  • [#5869] some minor syntax optimization
  • [#5885] optimize log in ConnectionProxyXA
  • [#5894] remove dependency without license
  • [#5895] remove 7z format compression support
  • [#5896] remove mariadb.jdbc dependency
  • [#5384] unified project version
  • [#5419] publish images based on java 8/17 and support maven-3.9.0
  • [#5829] fix codecov chart not display
  • [#5878] optimize httpcore and httpclient dependencies
  • [#5917] upgrade native-lib-loader version
  • [#5926] optimize some scripts related to Apollo
  • [#5938] support jmx port in seata
  • [#5951] remove un support config in jdk17
  • [#5959] modify code style and remove unused import
  • [#6002] remove fst serialization
  • [#6045] optimize derivative product check base on mysql

security:

  • [#5642] add Hessian Serializer WhiteDenyList
  • [#5694] fix several node.js security vulnerabilities
  • [#5801] fix some dependencies vulnerability
  • [#5805] fix some serializer vulnerabilities
  • [#5868] fix npm package vulnerabilities
  • [#5916] upgrade nodejs dependency
  • [#5942] upgrade dependencies version
  • [#5987] upgrade some dependencies version
  • [#6013] upgrade seata-server spring version

test:

  • [#5308] add unit test [FileLoader, ObjectHolder, StringUtils]
  • [#5309] add unit test [ArrayUtils, ConfigTools, MapUtil]
  • [#5335] add unit test [EnhancedServiceLoader,ExtensionDefinition,SizeUtilTest,ReflectionUtil,LowerCaseLinkHashMap,FileLoader,ObjectHolder]
  • [#5366] fix UpdateExecutorTest failed
  • [#5383] fix multi spring version test failed
  • [#5391] add unit test for config module
  • [#5428] fix FileTransactionStoreManagerTest failed
  • [#5622] add unit test [ExporterType, RegistryType]
  • [#5637] add unit test [BatchResultMessage, HeartbeatMessage, RegisterRMResponse, ResultCode, RegisterTMResponse, MergeResultMessage, MergedWarpMessage, Version]
  • [#5893] remove sofa test cases
  • [#5845] upgrade druid and add test-druid.yml
  • [#5863] fix unit test in java 21
  • [#5986] fix zookeeper UT failed
  • [#5995] add test cases for RaftClusterMetadataMsg
  • [#6001] add test cases for RaftMsgExecute under branch package
  • [#5996] add test cases for RaftMsgExecute under global package
  • [#6003] add test cases for RaftMsgExecute under lock package
  • [#6009] add test cases for RaftServerFactory

Contributors:

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.

2023-10-31 16:46:15
seata

v1.8.0

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:

  • [#3672] support Dameng database
  • [#5892] support PolarDB-X 2.0 database

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:

  • [#5867] fix npm package vulnerabilities
  • [#5898] fix npm package vulnerabilities

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.

2023-09-05 10:41:37
seata

v1.7.1

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:

  • [#5728] fix some dependencies vulnerability
  • [#5766] fix some serializer vulnerabilities

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.

2023-07-11 17:25:37
seata

v1.7.0

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 for seata-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 in seata-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 throw ClassCastException 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:

  • [#5380] fix UpdateExecutorTest failed
  • [#5382] fix multi spring version test failed

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.

2022-12-22 11:26:08
seata

v1.6.1

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.

2022-12-17 00:31:40
seata

v1.6.0

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.

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

2022-07-13 00:00:39
seata

v1.5.2

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 with easyj-maven-plugin to fix the conflict between shade and flatten
  • [#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.

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

2022-05-17 09:48:23
seata

v1.5.0

//TBD

2022-04-22 14:48:44
seata
2021-04-25 15:47:30
seata

v1.4.2

Seata 1.4.2 Released.

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

The version is updated as follows:

feature:

  • [#2933] add antlr for mysql sqlparser
  • [#3228] support custom serialization plugin
  • [#3172] support undo_log compression mode in AT
  • [#3372] Saga support customize whether update last retry log
  • [#3411] support seata-server thread pool parameters configuration
  • [#3348] support redis sentinel storage mode in TC
  • [#2667] support password decryption when using db and redis storage mode
  • [#3427] add distributed lock interface
  • [#3443] support send the seata-server log to logstash or kafka
  • [#3486] add transaction service group for metric
  • [#3317] support to obtain multiple configurations through a single node when using zookeeper as configuration center
  • [#3516] support acl-token when consul is used registry and configuration center
  • [#3116] support configuring apollo configService and cluster
  • [#3468] saga support loop execution on state
  • [#3447] support Transaction context printing in logging framework

bugfix:

  • [#3258] fix AsyncWorker potential OOM problem
  • [#3293] fix configuration cache get value type mismatch exception
  • [#3241] forbidden use order by or limit in multi sql
  • [#3406] fix the value can not be push to nacos when special charset in config.txt
  • [#3418] fix getGeneratedKeys may get history pk
  • [#3408] fix the NPE problem of jar running mode when the third-dependency on separate packaging
  • [#3431] fix property bean may not be initialized when reading configuration
  • [#3413] fix the logic of rollback to savepoint and release to savepoint
  • [#3367] when the xa branch is rollback, it cannot be executed due to idle state
  • [#3448] reduce unnecessary competition and remove missing locks
  • [#3451] fix set auto-commit to true when local transactions are not being used. Failure to compete for a lock causes the global transaction to exit, invaliding the global row lock and dirty writing of the data.
  • [#3481] fix seata node refresh failure because of consul client throws exceptions
  • [#3491] fix typo in README.md
  • [#3531] fix the NPE of RedisTransactionStoreManager when get branch transactions
  • [#3500] fix oracle and postgreSQL can't query column info
  • [#3560] fix the problem that the asynchronous task of the transactions in the committing state has no time threshold and cannot recover the transaction
  • [#3555] do not call setBlob to invalid the jdbc exception
  • [#3540] fix server distribution missing files
  • [#3597] fix the possible NPE
  • [#3568] fix automatic datasource agent caused by ConcurrentHashMap.computeIfAbsent Deadlock problem
  • [#3402] fix the problem that the updated column cannot be resolved because the field name in the updated SQL contains the database name
  • [#3464] fix test case NPE and StackTraceLogger's log.
  • [#3522] fix register branch and store undolog when AT branch does not need compete lock
  • [#3635] fix pushing notification failed when the configuration changed in zookeeper
  • [#3133] fix the case that could not retry acquire global lock
  • [#3156] optimize the logic of SpringProxyUtils.findTargetClass

optimize:

  • [#3341] optimize the format of the path to the specified configuration file
  • [#3385] optimize github action and fix unit test failure
  • [#3175] improve UUIDGenerator using "history time" version of snowflake algorithm
  • [#3291] mysql jdbc connect param
  • [#3336] support using System.getProperty to get netty config property
  • [#3369] add github action secrets env for dockerHub
  • [#3343] Migrate CI provider from Travis CI to Github Actions
  • [#3397] add the change records folder
  • [#3303] supports reading all configurations from a single Nacos dataId
  • [#3380] globalTransactionScanner listener optimize
  • [#3123] optimize the packing strategy of seata-server
  • [#3415] optimize maven clean plugin to clear the distribution directory
  • [#3316] optimize the property bean may not be initialized while reading config value
  • [#3420] optimize enumerated classes and add unit tests
  • [#3533] added interface to get current transaction role
  • [#3436] optimize typo in SQLType class
  • [#3439] adjust the order of springApplicationContextProvider so that it can be called before the XML bean
  • [#3248] optimize the config of load-balance migration to belong the client node
  • [#3441] optimize the auto-configuration processing of starter
  • [#3466] String comparison uses equalsIgnoreCase()
  • [#3476] support when the server parameter passed is hostname, it will be automatically converted to IP
  • [#3236] optimize the conditions for executing unlocking
  • [#3485] optimize useless codes in ConfigurationFactory
  • [#3505] optimize useless if judgments in the GlobalTransactionScanner class
  • [#3544] optimize the get pks by auto when auto generated keys is false
  • [#3549] unified the length of xid in different tables when using DB storage mode
  • [#3551] make RETRY_DEAD_THRESHOLD bigger and configurable
  • [#3589] Changed exception check by JUnit API usage
  • [#3601] make LoadBalanceProperties compatible with spring-boot:2.x and above
  • [#3513] Saga SpringBeanService invoker support switch json parser
  • [#3318] make CLIENT_TABLE_META_CHECKER_INTERVAL configurable
  • [#3371] add applicationId for metric
  • [#3459] remove duplicate validAddress code
  • [#3215] opt the reload during startup in file mode
  • [#3631] optimize nacos-config.py parameter
  • [#3638] optimize the error when use update or delete with join in sql
  • [#3523] optimize release savepoint when use oracle
  • [#3458] reversion the deleted md
  • [#3574] repair Spelling errors in comments in EventBus.java files
  • [#3573] fix designer directory path in README.md
  • [#3662] update gpg key
  • [#3664] optimize some javadocs
  • [#3637] register the participating companies and pull request information

test

  • [#3381] test case for tmClient
  • [#3607] fixed bugs in EventBus unit tests
  • [#3579] add test case for StringFormatUtils
  • [#3365] optimize ParameterParserTest test case failed
  • [#3359] remove unused test case
  • [#3578] fix UnfinishedStubbing Exception in unit test case
  • [#3383] optimize StatementProxyTest unit test

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.