Downloads
Seata
GitHub: https://github.com/seata/seata
Release Notes: https://github.com/seata/seata/releases
1.5.2 (2022-07-12)
Release notes
Seata 1.5.2
Seata 1.5.2 发布。
Seata 是一款开源的分布式事务解决方案,提供高性能和简单易用的分布式事务服务。
此版本更新如下:
feature:
- [#4661] support xid 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.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
- WebSite: https://seata.io
1.5.1 (2021-05-17)
Release notes
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 exception that may occur when using ONLY_CARE_UPDATE_COLUMNS configuration
- [#4228 ] fix resource suspension in xa mode caused by choose other ip as channel alternative
- [#4408 ] fix the invalid environment variable in container env
- [#4441 ] fix the problem that pipelined resources are not closed in redis mode and add branchSession judge branchSessions is not null
- [#4438 ] fix the problem that GlobalSession could not be deleted normally in the case of delayed deletion in the file mode of the develop branch
- [#4432 ] fix the inability to get some remote configurations
- [#4452 ] fix the change log of 'service.disableGlobalTransaction' config
- [#4449 ] fix redis mode page npe and optimize get globalSession on average
- [#4459 ] fix the failure to obtain before image and after image on oracle and pgsql of the develop branch
- [#4471 ] in branch 'develop', fix the error when service.vgroupMapping change
- [#4474 ] fix Mysql multi-bit Bit type field rollback error
- [#4492 ] fix the failure to update cluster list dynamically when use eureka of the develop branch
- [#4535 ] fix FileSessionManagerTest fail
- [#4561 ] fix allSessions/findGlobalSessions may return null and cause npe
- [#4505 ] fix fastjson serialization of time data types
- [#4579 ] fix prepareUndoLogAll of MySQLInsertOrUpdateExecutor
- [#4005 ] fix PK constraint name isn't the same as the unique index name which is belong to PK
- [#4062 ] fix saga complex parameter deserialization problem
- [#4199 ] fix rpc tm request timeout
- [#4352 ] fix some problem of the sql parser
- [#4487 ] fix remove Pagination hideOnlyOnePage attribute
- [#4449 ] fix optimize redis limit and fix redis page bug
- [#4608 ] fix test case
- [#3110 ] fix the problem of unit test
optimize:
- [#4163 ] improve CONTRIBUTING docs
- [#3678 ] supplement missing configuration and new version documents
- [#3654 ] fix typo,applicationContex -> applicationContext
- [#3615 ] asynchronous deletion after the transaction is committed
- [#3687 ] fix the case that could not retry acquire global lock
- [#3689 ] modify the attribute prefix in the file file.properties
- [#3528 ] optimize the memory footprint of redis mode
- [#3700 ] optimize the speed of buildLockKey
- [#3588 ] optimize the logic of datasource auto proxy
- [#3626 ] remove repeat change status
- [#3722 ] add the basic code of distributed lock
- [#3713 ] unified the default value of enableClientBatchSendRequest
- [#3120 ] optimize
Configuration
and add unit tests - [#3735 ] do not load
LoadBalance
if not necessary - [#3770 ] close the
Closeable
and optimize some code - [#3627 ] use TreeMap instead of the LinkedHashMap in TableMeta to compatible high level MySQL
- [#3760 ] opt the logback's config of
seata-server
- [#3765 ] Transfer the operation of adding configuration class from 'AutoConfiguration' to 'EnvironmentPostProcessor'
- [#3730 ] Refactoring the code of TCC mode
- [#3820 ] add column
action_name
to thetcc_fence_log
- [#3738 ]
JacksonUndoLogParser
supports to parsingLocalDateTime
- [#3794 ] optimize the packaging of
seata-server
- [#3795 ] optimize zk registry lookup performance
- [#3840 ] optimiza
apm-skwalking
operation method to generate rules - [#3834 ] optimize
seata-distribution
addapm-seata-skywalking
- [#3847 ] optimize ConcurrentHashMap.newKeySet replace ConcurrentSet
- [#3311 ] supports reading all configurations from a single Consul key
- [#3849 ] optimize string concat
- [#3890 ] optimize only the inserted fields are checked
- [#3895 ] optimize decode exception
- [#3898 ] add jib-maven-plugin
- [#3904 ] ehance metrics and fix seata-server UT not work
- [#3212 ] optimize recognize sql in limit and order by
- [#3905 ] optimize nacos-config.sh to support ash
- [#3935 ] optimize Send redis command at one time using pipeline
- [#3916 ] optimize determine whether the server in the register is alive
- [#3918 ] cache reflection results of the fields and methods
- [#3898 ] add jib-maven-plugin
- [#3907 ] optimize set server port
- [#3912 ] support config JVM param in env
- [#3939 ] use map instead of if else judge for more change in the future
- [#3955 ] add a start banner for seata
- [#3954 ] replace @Deprecated getOwnernName to getOwnerName in druid
- [#3981 ] optimize service port priority
- [#4013 ] optimize channel alive check
- [#3982 ] optimize readme doc and upgrade some dependencies
- [#3949 ]
nacos-config.py
support default parameters and optional input parameters - [#3991 ] disable listening in the FileConfiguration center in Springboot
- [#3994 ] Optimize the mechanism of periodically deleting tasks in the
tcc_fence_log
table - [#3327 ] supports reading all configurations from a single Etcd3 key
- [#4001 ] support to read YML configuration from Nacos, Zookeeper, Consul, Etcd3
- [#4017 ] optimize file configuration
- [#4018 ] optimize Apollo configuration
- [#4021 ] optimize Nacos、Consul、Zookeeper、Etcd3 configuration
- [#4034 ] optimize Nacos, Consul, Zookeeper and Etcd3 configuration Junit test Class
- [#4055 ] optimize NetUtil#getLocalAddress0
- [#4086 ] optimize lazily load branch transactions and task scheduling
- [#4056 ] optimize the DurationUtil
- [#4103 ] optimize AbstractLockManager#collectRowLocks logic
- [#3733 ] optimize acquire lock logic
- [#4144 ] support default configuration of tx-service-group
- [#4157 ] optimize client batch sending.
- [#4191 ] support rpc timeout can be customized.
- [#4216 ] no more attempt to clean undolog for none AT mode
- [#4176 ] use expire key instead hash when using redis as registry center.
- [#4196 ] tc batch response to client.
- [#4212 ] optimize the interface of the console
- [#4237 ] skip check lock when all the before image is empty
- [#4251 ] optimize partial code handling
- [#4262 ] optimize tcc module code handling
- [#4235 ] optimize instance saved in eureka
- [#4277 ] optimize acquire lock return fail-fast code in redis-pipeline mode.
- [#4284 ] support authentication of MSE-Nacos with ak/sk
- [#4299 ] optimize exceptions to make them friendly
- [#4300 ] optimize let DefaultCoordinator invoke NettyRemotingServer's close method,no longer closed by ServerRunner
- [#4270 ] improve the performance of global commit and global rollback, asynchronous branch transaction cleanup
- [#4307 ] when in TCC mode there is no need to delete global locks
- [#4303 ]
tcc_fence_log
table hanging log records are deleted asynchronously - [#4328 ] upload configuration script support comments
- [#4305 ] optimize acquire global lock fail error log print on tc
- [#4336 ] add SQL exception prompt not supported by AT mode
- [#4359 ] support configuration metadata read from environment variables
- [#4247 ] add tests for
java17
andspringboot
in thegithub/actions
- [#4353 ] Slimming down for the
seata-all.jar
- [#4393 ] skip reload for redis & db mode
- [#4400 ] asynchronous tasks handle global transactions in parallel
- [#4391 ] commit/rollback retry timeout event
- [#4409 ] add copyright header to test classes
- [#4282 ] optimize build UndoItem logic
- [#4407 ] file mode does not require lazy processing of sessions
- [#4436 ] optimize global session query in file mode
- [#4431 ] limit the number of queries in Redis storage mode
- [#4465 ] optimize client version transfer in tc batch response to client mode.
- [#4469 ] optimize the way to get configuration in DB mode of console
- [#4478 ] optimize Nacos config and naming properties
- [#4522 ] optimize GC parameters in JVM
- [#4517 ] enhance fail/timeout status metric and log level
- [#4451 ] filesessionmanager changed to singleton and optimized task thread pool processing
- [#4551 ] optimize metrics rt statistics
- [#4574 ] support accessKey/secretKey auto configuration
- [#4583 ] use HmacSHA256 instead of HmacSHA1 for ram signature
- [#4591 ] optimize the default value of the switch
- [#3780 ] optimize upgrade the Druid version
- [#3797 ] optimize support instance
BusinessActionContext
outside the TCC try method - [#3909 ] optimize
collectRowLocks
method - [#3763 ] optimize github actions
- [#4345 ] optimize fix the path of the package
- [#4346 ] optimize the log of the server and remove lombok
- [#4348 ] optimize Unified management the versions of maven-plugin
- [#4354 ] optimize the tests of
SAGA
- [#4227 ] optimize the versions of the dependencies
- [#4403 ] optimize disable
SAGA
tests - [#4453 ] optimize upgrade eureka-clients and xstream dependencies
- [#4481 ] optimize nacos config and naming properties
- [#4477 ] optimize debug log and fix typo
- [#4484 ]optimize the log of TM/RM register
- [#3874 ] optimize Add logo of registered enterprise,and Change image source to Alicdn
- [#4458 ] optimize fix the README.md of metrices module
- [#4482 ] optimize remove duplicated word
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- wangliang181230
- a364176773
- lvekee
- caohdgege
- lightClouds917
- objcoding
- siyu
- GoodBoyCoder
- pengten
- Bughue
- doubleDimple
- zhaoyuguang
- liuqiufeng
- jsbxyyx
- lcmvs
- onlinechild
- xjlgod
- h-zhi
- tanzzj
- miaoxueyu
- selfishlover
- tuwenlin
- dmego
- xiaochangbai
- Rubbernecker
- ruanun
- huan415
- drgnchan
- cmonkey
- 13414850431
- ls9527
- xingfudeshi
- spilledyear
- kaka2code
- iqinning
- yujianfei1986
- elrond-g
- jameslcj
- zhouchuhang
- xujj
- mengxzh
- portman
- anselleeyy
- wangyuewen
- imherewait
- wfnuser
- zhixing
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
1.4.2 (2021-04-26)
Release notes
Seata 1.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_loge 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 tologstash
orkafka
- [#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 withspring-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.
- slievrly
- caohdgege
- a364176773
- wangliang181230
- xingfudeshi
- jsbxyyx
- selfishlover
- l8189352
- Rubbernecker
- lj2018110133
- github-ganyu
- dmego
- spilledyear
- hoverruan
- anselleeyy
- Ifdevil
- lvxianzheng
- MentosL
- lian88jian
- litianyu1992
- xyz327
- 13414850431
- xuande
- tanggen
- eas5
- nature80
- ls9527
- drgnchan
- imyangyong
- sunlggggg
- long187
- h-zhi
- StellaiYang
- slinpq
- sustly
- cznc
- squallliu
- 81519434
- luoxn28
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
1.4.1 (2021-02-08)
Release notes
Seata 1.4.1
Seata 1.4.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#3238] add deflater support for seata compressor
bugfix:
- [#2879] fix deadlock during springboot project startup
- [#3296] when mixed use of AT and TCC, AT branchs is not deleted
- [#3254] clear the listener map of zk registry
- [#3309] Saga statemachine definition json cannot enable jackson parser, and when no choice matched in choice state will throw NPE
- [#3287] throw exception when update pk
- [#3323] clean root context when state machine inst record failed
- [#3281] fix wrong status when exception
- [#2949] fix throw NPE when get the state list
- [#3351] fix throw IllegalArgumentException when use hystrix when using SCA 2.2.3.RELEASE and below
- [#3349] the problem test case
- [#3325] fix retry commit unsuccess when record subMachineInst failed
- [#3357] fix deploy staging rule check failed
optimize:
- [#3188] Local variable 'map' is redundant and check queue offer return value
- [#3247] change client.log.exceptionRate to log.exceptionRate
- [#3260] use PriorityQueue to simply ShutdownHook
- [#3319] delete unnecessary @Sharable
- [#3313] replace StringBuffer to StringBuilder
- [#3335] modify TransactionPropagationInterceptor name
- [#3310] enable NamedThreadFactory to get ThreadGroup from the SecurityManager or Current thread
- [#3320] load balance strategy use constants
- [#3345] adjust GlobalLockTemplateTest
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- dongzl
- wangliang181230
- ls9527
- long187
- 81519434
- anselleeyy
- a364176773
- selfishlover
- suichen
- h-zhi
- jxlgzwh
- LiWenGu
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
- WebSite: https://seata.io
1.4.0 (2020-10-30)
Release notes
Seata 1.4.0
Seata 1.4.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
1.4.0 (2020-10-30)
Release notes
Seata 1.4.0
Seata 1.4.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#2380] support yml configuration
- [#3191] support jdbc type nclob
- [#2676] support least active load balance
- [#3198] spring boot support for custom config and registry type
- [#2806] support configuring default global transaction timeoutMillis
- [#2941] add apollo secret key configuration
- [#2080] support ConsistentHashLoadBalance
- [#2950] support the reentrant lock in redis module
- [#2913] The data source proxy mode can be selected as AT or XA
- [#2856] support for undoLog using Fst serialization
- [#3076] check lock in TC when use @GlobalLock
- [#2825] support send authentication msg
- [#2962] @GlobalTransactional and @GlobalLock can support customize lock retry config
bugfix:
- [#3214] fix the 'RootContext.DEFAULT_BRANCH_TYPE' is wrong in some cases
- [#3129] forbidding execute SQL which update pk value
- [#3205] fix can not get boolean value in configuration
- [#3170] the disposables tree set won't accept another Disposable with the same priority
- [#3180] serializer fst package name error
- [#3178] remove next line to space
- [#2929] fix the application was configured to degrade at startup and can't be dynamically switch to upgraded
- [#3050] fix fetch before images when delete and update statements
- [#2935] fix saga designer bug that the property box does not switch when switching nodes
- [#3140] fix Propagation.REQUIRES_NEW and add some comments
- [#3130] fix some problems in the automatic data source proxy
- [#3148] the redis lock key and the session key has conflict
- [#3136] fix the redis pipeline
- [#2551] Saga can't be used when the dataSource is AT's dataSourceProxy
- [#3073] do not proxy connections without an xid
- [#3074] There is no need to retry if the XA schema cannot find the XID
- [#3097] fix HttpAutoConfiguration always instantiation in springboot env
- [#3071] part of the connection is not unpacked
- [#3056] fixed a bug that after branch deletion, there are still remaining branch lock
- [#3025] fix the wrong package path
- [#3031] redis locker delete lock incomplete
- [#2973] fix oracle database in field size over 1000
- [#2986] fix checkstyle plugin can't exclude single file
- [#2910] fix error registry type comment
- [#2914] fix branchType not cleaned when consumer is in TCC mode
- [#2926] fastjson write undo log not parser
- [#2897] fix jedis unlock fail
- [#2918] fix the isolation problem when rollback in AT mode
- [#2972] UUIDGenerator generates duplicated id
- [#2932] nacos-config.py script could not run with namespace
- [#2900] ColumnUtils add escape with scheme
- [#2904] fix getConfig cache value is 'null'
- [#2890] fix misspelling in statelang examples
- [#3040] fix repeated commit when autocommit is false
- [#3230] fix use @EnableAutoDataSourceProxy startup failed
- [#2979] columns of resultset integrated with sharingjdbc need to be lowercase
- [#3233] fix Collections NPE
- [#3242] fix batch sql getTableMeta error
- [#3246] fix the exception when limit condition contains VariantRefExpr
optimize:
- [#3062] refactor the redis session store
- [#3201] optimize the wrong stack not fully display
- [#3117] make log more clearly and remove the useless code
- [#3134] optimize codes related to Map and List
- [#3195] optimize XID related codes
- [#3200] optimize rpc message when message was substring
- [#3186] remove duplicated in string utils
- [#3162] remove repeated conditional tests
- [#2969] upgrade to druid 1.1.23
- [#3141] upgrade nacos and FastJSON dependencies
- [#3118] add more configuration tips in additional-spring-configuration-metadata.json
- [#2597] judging xid status to avoid repeated processing
- [#3102] optimize ContextCore, can be set 'Object' value
- [#3016] refactor the redis lock string to hash
- [#3046] remove unused code in serializer factory
- [#3053] jedis pool adds maxtotal configuration
- [#3012] remove set port repeatedly
- [#2978] optimize globalCommit for mixed use of AT and TCC
- [#2967] replace with lambda
- [#2968] ensure that the register message is sent after RM client initialization
- [#2945] optimize async commit and reduce one update
- [#2952] optimize additional-spring-configuration-metadata.json
- [#2920] optimize some grammatical errors
- [#2906] added some configuration items to keep consistent with official documents
- [#3222] optimize fileListener to decrease cpu time usage
- [#2843] removed Reloadable from the redis/db SessionManager
- [#3209] add using company logos
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- wangliang181230
- a364176773
- jsbxyyx
- l81893521
- lightClouds917
- caohdgege
- yujianfei1986
- ph3636
- PeineLiang
- heyaping388
- guang384
- zdrjson
- ITAlexSun
- dongzl
- 81519434
- wangwei-yin
- jujinghao
- JRial95
- mxszs1
- RayneHwang
- everyhook1
- li469791221
- luorenjin
- yangxb2010000
- selfishlover
- yyjgit66
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
- WebSite: https://seata.io
1.3.0 (2020-07-14)
Release notes
Seata 1.3.0
Seata 1.3.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#2398] support multi pk for MySQL
- [#2484] store mode support redis
- [#2817] Saga StateMachine engine and Designer support Groovy Script Task
- [#2646] server support for HikariCP
- [#2253] support for dynamic upgrade and downgrade
- [#2565] support for transaction annotations on classes
- [#2510] support LZ4 compressor
- [#2622] support version valid check
- [#2658] dataSources support different permissions of Oracle users
- [#2620] support group configuration in Nacos registry
- [#2699] compatible with ACM
- [#2509] support for undo full data columns on update operate
- [#2584] StateHandlerInterceptor and StateRouterInterceptor support SPI
- [#2808] server check auth support SPI
- [#2616] TCC adapter for Dubbo And Sofa reference annotation
- [#2831] Saga support jackson json parser
- [#2554] support zk serializer
- [#2708] support jdbc type array, datalink etc
- [#2412] xid generation strategy support snowflake
- [#2611] support the cache of configuration values
bugfix:
- [#2893] fix get table meta failed in postgresql
- [#2887] fix rm client receive response logic
- [#2610] nacos-script adapt to Nacos 1.2 on permission control
- [#2588] fix when the check_style does not pass, no detail information output
- [#2543] fix ApplicationKeeper ShutdownHook signal invalid.
- [#2598] fix unable to register Nacos
- [#2618] fix could not create folder in zookeeper
- [#2628] fix get tableName and alias error in mysql delete
- [#2639] fix Apollo configuration load fail due to camel style
- [#2629] fix duplicated resource id with different currentSchema in PostgreSQL
- [#2659] fix mysql insert use select last_insert_id is undo_log id value
- [#2670] fix dataSource initialize more times
- [#2617] fix incorrect getAnnotation about class and method
- [#2603] fix can't get generated keys value.
- [#2725] fix other expression before insert row primary key.
- [#2698] fix nested GlobalLock unbind prematurely
- [#2755] fix not return value when branchCommit and branchRollback throw exception
- [#2777] fix can't rollback when set rollback retry count was zero.
- [#2812] fix get PostgreSQL tableMeta error when using shardingSphere
- [#2760] fix TM rollback fail throw the seata exception, rollback retrying throw NPE
- [#2837] fix wrong constant used in the saga SubStateMachineHandler
- [#2839] fix business exception is lost when compensation succeed in saga mode
- [#2650] fix TCC and Saga branches will also parse SQL in AbstractConnectionProxy
- [#2850] Fix Saga designer rounded polylines cause page crashes
- [#2868] fix can't find AsyncEventBus dependency
- [#2871] fix get tableMeta failed when table name like 'schame'.'table'
- [#2685] fix oracle insert sql use sysdate error.
- [#2872] fix missing escape char in the primary key for the undo sql
- [#2875] fix ColumnUtils delEscape with scheme error
optimize:
- [#2573] replace Random with ThreadLocalRandom in RandomLoadBalance
- [#2540] refactor rpc request method and rpc interface
- [#2642] optimize unsafe double-checked locking in SofaRegistryServiceImpl
- [#2561] keep the same logic of get tableMeta
- [#2591] support the default timeout for zookeeper register
- [#2601] repackage spring-boot-starter
- [#2415] distinguish database behavior according to the branch type
- [#2647] remove the unused variable
- [#2649] optimize get tableMeta
- [#2652] consul supports custom port
- [#2660] modify IdWorker position to make it reasonable
- [#2625] polish testing code, replace with
Mockito.verify
- [#2666] add using users organization logos
- [#2680] Change GlobalTransactionalInterceptor to singleton
- [#2683] optimize TccActionInterceptor log print
- [#2477] refactoring client request processing logic.
- [#2280] refactor InsertExecutor
- [#2044] optimize ColumnUtils.addEscape method performance
- [#2730] optimize get config type from configuration
- [#2723] optimize get tableMeta in postgreSql
- [#2734] change postgreSql driver scope to provide
- [#2749] optimize logger class misWrite
- [#2751] copy jdbc driver to image
- [#2759] optimized the generation rules of thread name factory
- [#2607] support insert pkValue support check
- [#2765] optimize the processing logic of XA's RM for unsupported transaction resources.
- [#2771] disable unstable unit tests
- [#2779] CollectionUtils.decodeMap method variables ConcurrentHashMap refact to HashMap
- [#2486] refactor server handle request process logic from client
- [#2770] TCC two phase method return type supports void
- [#2788] optimize server log pattern and support for colored log
- [#2816] optimize create clazz instance
- [#2787] modify workerId generation method
- [#2776] optimize paramsPlaceHolder generate by StringUtils.repeat()
- [#2799] code opt format
- [#2829] downgrade check unlock and asynchronous
- [#2842] code opt format about the sqls and typos
- [#2242] optimize PreparedStatementProxy initialization logic
- [#2613] fix typo and some coding guidelines
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- a364176773
- wangliang181230
- jsbxyyx
- l81893521
- objcoding
- long187
- CharmingRabbit
- diguage
- helloworlde
- chenxi-null
- ph3636
- xianlaioy
- qq925716471
- horoc
- XavierChengZW
- anic
- fxtahe
- wangwengeek
- yangfuhai
- PeineLiang
- f654c32
- dagmom
- caohdgege
- zjinlei
- yyjgit66
- lj2018110133
- wxbty
- hsoftxl
- q294881866
- 81519434
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
- WebSite: https://seata.io
1.2.0 (2020-04-20)
Release notes
Seata 1.2.0
Seata 1.2.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#2381] support XA transaction mode
- [#2206] support REQUIRED、REQUIRES_NEW、SUPPORTS and NOT_SUPPORTED transaction propagation
- [#2112] support batch update and delete with multiple sql
- [#2275] support hsf on TCC transaction mode
- [#2108] support zip bzip2 7z compressor
- [#2328] support for isolated loading of mysql 5.x and 8.x jdbc drivers classes
- [#2367] add permission configuration support for Nacos 1.2
- [#2359] support propagation.never, propagation.mandatory and transaction suspend and resume api
- [#2418] support fst serialization
- [#2135] support SPI scope
- [#2370] support failureHandler implement can be read from the container
- [#2481] support the max wait configuration for db
- [#2379] support custom service name when registering with Nacos
- [#2308] add switch to control whether to register branch on Saga transaction mode
- [#2301] support default expr and nextval for postgresql
bugfix:
- [#2575] fix executeBatch can not get targetSql in Statement mode
- [#2283] fix oracle get tableMeta fail
- [#2312] fix the judgement of configuration condition
- [#2309] fix timestamp deserialize lost nano
- [#2292] fix some configuration not converted to camel style
- [#2306] fix deprecated maven prerequisites
- [#2287] fix connection context can't be remove when global lock retry
- [#2361] fix the error configuration name
- [#2333] fix wrong exception information when rollback fails due to dirty data
- [#2390] fix configuration item containing spaces
- [#2408] fix missing sequence in undo_log table
- [#2391] fix configuration exceptions lead to increased CPU usage
- [#2427] fix StringUtils.toString(o) StackOverflowError
- [#2384] fix StateMachineRepository#getStateMachineById will replace the last version in cache
- [#2323] fix wrong proxy of datasource bean
- [#2466] fix memory visibility of active attribute in file mode
- [#2349] fix insert sql primary key value support check
- [#2479] fix postgresql schema when not use lowerCase
- [#2449] fix can't get table structure when startup
- [#2505] fix bug of session store path value judgment
- [#2456] fix server encode request error
- [#2495] fix the NPE and reduce the request when lockkey is null
- [#2490] fix RpcContext.addResource when resource is null
- [#2419] fix http testcase run failed
- [#2535] fix wrong configuration name in config.txt
- [#2524] registration service configuration missing and inconsistent
- [#2473] fix flush condition of disk in file mode
- [#2455] fix child module can't execute copyright and checkstyle inspection
optimize:
- [#2409] reduce the db and network request when undoLog or lockKey is empty
- [#2329] separate the different storage pattern processing logic
- [#2354] optimize the unsupported listener logic for spring cloud config
- [#2320] optimize protostuff and kryo serialize timestamp
- [#2307] optimize transaction context switch logic when switch transaction mode
- [#2364] optimize generated instances that were not actually used when the class was loaded
- [#2368] add zk missing configuration
- [#2351] add get local global status
- [#2529] optimize druid parameter
- [#2288] codecov.yml ignore mock test
- [#2297] remove duplicated dependency
- [#2336] add using organization logos
- [#2348] remove redundant configuration
- [#2362] optimize stackTraceLogger param
- [#2382] optimize RegistryFactory singleton pattern and RegistryType judgement
- [#2400] optimize the magic num of date at UUIDGenerator
- [#2397] fix typo
- [#2407] inaccurate judgment may be lead to NPE
- [#2402] optimize the rm and tm register log
- [#2422] add link of script in document
- [#2440] optimize contact us and startup log
- [#2445] optimize the class registration method for kryo and fst
- [#2372] refactor lock store sql with SPI
- [#2453] optimize unnecessary server configuration item
- [#2369] refactor log store sql with SPI
- [#2526] optimize spring-boot startup log
- [#2530] remove use connPool
- [#2489] optimize exceptionHandler's method signature
- [#2494] reduce the redundant code
- [#2523] optimize abnormal global transaction's output logs by frequency
- [#2549] optimize the exception log for ZookeeperConfiguration
- [#2558] optimize config and server module log
- [#2464] enhance Saga transaction editor
- [#2553] add some notes about using scripts
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- a364176773
- ph3636
- lightClouds917
- l81893521
- jsbxyyx
- objcoding
- CharmingRabbit
- xingfudeshi
- lovepoem
- SevenSecondsOfMemory
- zjinlei
- ggndnn
- tauntongo
- threefish
- helloworlde
- long187
- jaspercloud
- dk-lockdown
- wxbty
- sharajava
- ppj19891020
- YuKongEr
- Zh1Cheung
- wangwei-ying
- mxszs
- q294881866
- HankDevelop
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
- WebSite: https://seata.io
1.1.0 (2020-02-19)
Release notes
Seata 1.1.0
Seata 1.1.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#2200] support postgresql(client and server)
- [#1746] integrate with httpClient
- [#2240] support custom saga transaction recovery strategy on transaction timeout
- [#1693] support for druid class isolation loading
- [#2245] zookeeper digest support
- [#2239] compatibility dubbo 2.7.4+
- [#2203] support nacos configuration group
- [#2086] support apollo configuration namespace
- [#2106] support FastThreadLocalContextCore
- [#1703] create sql parser SPI and a druid type sql parser
- [#2151] Saga provide a switch to skip branch report on branch success
bugfix:
- [#2270] fix worker size not support enum type and some minor problem
- [#2258] fix channelHandler not sharable
- [#2261] fix ApplicationContext has not been refreshed
- [#2262] fix nacos script set group error
- [#2249] fix saga statemachine status incorrect on register branch failed
- [#2262] fix nacos script set group error
- [#2126] fix escape characters for column and table names
- [#2234] fix type error when fastjson deserialize long type
- [#2237] fix DefaultCoordinatorTest failed in Windows OS
- [#2233] fix fastjson undo filter tableMeta
- [#2172] fix configuration center can't read configuration using SpringCloudConfig
- [#2217] correct wrong property names in seata-spring-boot-starter
- [#2219] fix the value of disableGlobalTransaction not being read correctly
- [#2187] fix the wrong rollback sequence caused by the same record request from different transaction branches on different servers
- [#2175] fix direct buffer OOM
- [#2210] fix retry expired commit and rollback globalSession can't be removed
- [#2179] fix type casting problem when using redis as registry
- [#2192] fix override eureka getHostName() return ipAddress
- [#2198] fix global lock not released when rollback retry timeout
- [#2167] fix saga concurrent asynchronous execution with duplicate primary key xid
- [#2185] fix issue of judgement container in kubernetes
- [#2145] fix Saga report branch status incorrect when service retried succeed
- [#2113] fix when branchRollback failed, it will trigger retry of multi-tc
optimize:
- [#2255] optimize some default configuration value
- [#2230] unify the config style and keep defaults consistent
- [#1935] some about rpc optimize
- [#2215] optimize handing saga transaction timeout
- [#2227] separate tc In/Outbound interface
- [#2033] an optimization about DefaultRemotingParser
- [#1688] reduce unnecessary dependences in client side
- [#2134] separate the different transaction pattern processing logic
- [#2224] optimize ContextCoreLoader code style
- [#2171] optimize script and add script usage demo
- [#2208] replace getDbType with LoadLevel name
- [#2182] optimize configuration item prefix judgment
- [#2211] optimize RootContext code style
- [#2140] optimize GzipUtil code style
- [#2209] refactor seata-discovery more readable
- [#2055] refactor tableMetaCache and undoLogManager with SPI
- [#2184] refactor seata-config more readable
- [#2095] refactor of auto proxying of datasource
- [#2178] saga statemachine designer add default properties for catch node
- [#2103] optimize tcc module code style
- [#2125] change the package path of MySQL recognizer
- [#2176] fix typos
- [#2156] refactor sql parser type druid as constant
- [#2170] enhance test coverage of seata common
- [#2139] gracefully close resources
- [#2097] use serializer package name instead of codec
- [#2159] optimize spring module code style
- [#2036] optimize Dubbo parser
- [#2062] optimize seata-rm-datasource module code style
- [#2146] optimize log specifications
- [#2038] simplify to make seata-common more readable
- [#2120] fix typos
- [#2078] enhance oracle table meta cache code coverage
- [#2115] fix typos
- [#2099] optimize tm module code style
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- xingfudeshi
- objcoding
- long187
- zjinlei
- ggndnn
- lzf971107
- CvShrimp
- l81893521
- ph3636
- koonchen
- leizhiyuan
- a364176773
- caioguedes
- helloworlde
- wxbty
- bao-hp
- guojingyinan219
- CharmingRabbit
- jaspercloud
- jsbxyyx
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
- WebSite: https://seata.io
1.0.0 (2019-12-21)
Release notes
Seata 1.0.0
Seata 1.0.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#1966] add single send request for client
- [#2004] add config center synchronization script
- [#1997] provides a tool for generating graphics that show the state machine execution path
- [#1992] support dynamic disable
- [#1898] support dynamic config
- [#1983] add hessian codec for rpc serialization
- [#1960] Provide a visual graph designer for Seata Saga StateMachine based on GGEditor
- [#1900] Saga state language support "Retry" service when error occurred
- [#1885] add configuration for build docker image in server module
- [#1914] support where condition exists for Oracle
- [#1878] support exists in where condition
- [#1871] adapt springcloud-alibaba-seata autoconfig
- [#1844] StateMachine ServiceTask supports asynchronous execution
- [#1742] add seata-spring-boot-starter
- [#1460] support gzip compressor
- [#1492] support gRpc
bugfix:
- [#2066] fix thread unsafe which missing double check when initial eureka client
- [#2059] fix repeated rollback caused by asynchronous rollback thread
- [#2050] fix if add configListener but dataId not exist, it will throw NPE
- [#2053] fix when tableName is keyword, the insert operation will get afterImage fail
- [#2054] fix RetryRollbackingSessionManager lost Rollbacking
- [#2043] fix startup failure when dynamic proxy is turned on and use druid-spring-boot-starter
- [#1668] fix sql statement escape symbol
- [#2029] fix seata-spring-boot-starter does not work
- [#2037] fix mysql connection unable to release
- [#2032] fix Etcd3Configuration FILE_CONFIG reference incorrect
- [#1929] fix duplicated table meta cache key
- [#1996] fix auto proxying of datasource which has final modifier
- [#2001] replace deprecated jvm args
- [#1984] fix presuppose environment variable and replace base image for tool
- [#1978] fix FileTransactionStoreManagerTest failed on wins OS
- [#1953] fix get table meta failed with catalog
- [#1973] fix error of get server port in container
- [#1905] solve the lock_key length problem
- [#1927] fix class with private access constructors should not be loaded by SPI.
- [#1961] fix travis-ci exceeded the maximum log length
- [#1893] fix saga dose not delete branches when transaction ended
- [#1932] fix issue of doesn't match environment when build docker image
- [#1912] fix string.format() method formatting error
- [#1917] fix NullPointerException in DB mock during CI
- [#1909] fix xidInterceptorType is null
- [#1902] fix NPE in UndoExecutorFactory
- [#1789] fix xid header lowercase
- [#1889] fix register branch thread hang on tcc mode
- [#1813] fix TCC does not support cross-service
- [#1825] fix global status inconsistent when rollback and branch register are concurrent
- [#1850] fix server restart not recover max sessionId on db mode
- [#1879] fix jdbc parameter set null
- [#1874] fix when write the new file throw ClosedChannelException
- [#1863] fix the other of column type cause rollback fail
- [#1837] fix saga ExpressionEvaluator not support null value
- [#1810] fix statemachine def can't store to db and provide query the state logs
- [#1834] fix StateInstance log can't record output parameters
- [#1856] fix protostuff undo log get default content
- [#1845] fix when branchCommit failed,it will trigger retry of multi-tc and throw npe
- [#1858] fix Global transaction does not work
- [#1846] fix multi-thread concurrent add listener problem
- [#1839] fix filter repeated lock
- [#1768] fix problem when set useInformationSchema true and table name was keyword
- [#1796] fix unexcepted exception can roll back
- [#1805] fix connectionproxy prepareStatement not in global transaction
- [#1780] fix can't use select for update in oracle
- [#1802] changing HashMap to LinkedHashMap for deterministic iterations
- [#1793] fix auto proxy for multiple-datasource does not work
- [#1788] fix mysql can not get primary key value
- [#1764] fix jdk 11 remoteAddress is null
- [#1778] fix clean up resources in time to avoid mutual influence between unit tests
- [#1777] fix DeleteExecutor buildBeforeImageSQL keyword checker by db type
optimize:
- [#2068] optimize get database connection
- [#2056] remove non-javadoc element
- [#1775] optimize datasource manager branch rollback exception log
- [#2000] classify script to correspond directory
- [#2007] enhance test coverage of seata common
- [#1969] add ops script for Docker-Compose, Kubernetes and Helm
- [#1967] Add Dockerfile
- [#2018] optimize about ConfigFuture
- [#2020] optimize saga log output
- [#1975] Flatten Saga nested transactions
- [#1980] show the applicationId when register TM
- [#1994] rename zk configuration root path.
- [#1990] add netty config constant keys.
- [#1979] optimize get select for update recognizer
- [#1957] load keywordChecker through SPI
- [#1956] modify no available server error more clearly, and fixed NP
- [#1958] transform desinger json to statemachine standard json
- [#1951] add using organization logo
- [#1950] leak of error trace while handleAsyncCommitting
- [#1931] nacos-config.py support namespace
- [#1938] optimize the speed when batch insert or batch update
- [#1930] reduce HashMap initial size
- [#1919] force check code style
- [#1918] optimize assert throw exception
- [#1911] javadoc should be used for classes, class variables and methods.
- [#1920] use iterator to remove timeout future.
- [#1907] encapsulation determines the supported database type
- [#1903] batch query branchSession by xid list
- [#1910] all Override methods must be annotated with @override
- [#1906] add exception system exit code when rpcServer init.
- [#1897] remove clientTest it's not use
- [#1883] restructure SQLRecognizer and UndoExecutor
- [#1890] reformat saga module
- [#1798] improving method format performance
- [#1884] optimize auto closeable
- [#1869] add phase one successful reporting switch
- [#1842] add some init script
- [#1838] simplify and groom configuration items
- [#1866] server lack of error trace
- [#1867] optimization of seata-spring-boot-starter
- [#1817] add unit test for seata-tm module
- [#1823] reduce server rpc with db
- [#1835] SagaTransactionalTemplate provide reloadTransaction method
- [#1861] optimize no primary key output log
- [#1836] change "IsPersist" property value type from String to Boolean
- [#1824] remove deprecated JVM arguments in Java 11
- [#1820] adjust check style
- [#1806] format error log
- [#1815] update codecov.yml
- [#1811] adjust codecov configuration
- [#1799] reduce unnecessary synchronized
- [#1674] increase rm code coverage by db mock
- [#1710] add prefix counter for NamedThreadFactory
- [#1790] format seata server register eureka instance id
- [#1760] put message to logQueue
- [#1787] make rpc remoting log easier to read
- [#1786] simplify code
- [#1766] remove unused method
- [#1770] string splice and release lock
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- long187
- jsbxyyx
- l81893521
- helloworlde
- xingfudeshi
- zjinlei
- CharmingRabbit
- objcoding
- cmonkey
- lzf971107
- ggndnn
- lightClouds917
- ruqinhu
- yuhuangbin
- anrror
- a364176773
- caohdgege
- contextshuffling
- echooymxq
- github-ygy
- iapplejohn
- jKill
- Justice-love
- lovepoem
- niaoshuai
- ph3636
- wangwei-ying
- whjjay
- yangfuhai
- zhongfuhua
- lizwmaster
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.9.0 (2019-10-16)
Release notes
Seata 0.9.0
Seata 0.9.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#1608] Saga implementation base on state machine
- [#1625] support custom config and registry type
- [#1656] support spring cloud config
- [#1689] support -e startup parameter for specifying the environment name
- [#1739] support retry when tm commit or rollback failed
bugfix:
- [#1605] fix deadlocks that can be caused by object locks and global locks and optimize the granularity of locks
- [#1685] fix pk too long in lock table on db mode and optimize error log
- [#1691] fix can't access private member of DruidDataSourceWrapper
- [#1699] fix use 'in' and 'between' in where condition for Oracle and Mysql
- [#1713] fix LockManagerTest.concurrentUseAbilityTest assertion condition
- [#1720] fix can't refresh table meta data for oracle
- [#1729] fix oracle batch insert error
- [#1735] clean xid when tm commit or rollback failed
- [#1749] fix undo support oracle table meta cache
- [#1751] fix memory lock is not released due to hash conflict
- [#1761] fix oracle rollback failed when the table has null Blob Clob value
- [#1759] fix saga service method not support interface type parameter
- [#1401] fix the first registration resource is null when RM starts
optimize:
- [#1701] remove unused imports
- [#1705] Based on Java5 optimization
- [#1706] optimize inner class to static class
- [#1707] default charset use StandardCharsets.UTF_8 instead
- [#1712] abstract undolog manager class
- [#1722] simplify to make codes more readable
- [#1726] format log messages
- [#1738] add server's jvm parameters
- [#1743] improve the efficiency of the batch log
- [#1747] use raw types instead of boxing types
- [#1750] abstract tableMeta cache class
- [#1755] enhance test coverage of seata-common module
- [#1756] security: upgrade jackson to avoid security vulnerabilities
- [#1657] optimize the problem of large direct buffer when file rolling in file storage mode
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- long187
- ggndnn
- xingfudeshi
- BeiKeJieDeLiuLangMao
- zjinlei
- cmonkey
- jsbxyyx
- zaqweb
- tjnettech
- l81893521
- abel533
- suhli
- github-ygy
- worstenemy
- caioguedes
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.8.1 (2019-09-18)
Release notes
Seata 0.8.1
Seata 0.8.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#1598] support profile to use absolute path
- [#1617] support profile’s(registry.conf) name configurable
- [#1418] support undo_log kryo serializer
- [#1489] support protobuf maven plugin
- [#1437] support kryo codec
- [#1478] support db mock
- [#1512] extended support for mysql and oracle multiple insert batch syntax
- [#1496] support auto proxy of DataSource
bugfix:
- [#1646] fix selectForUpdate lockQuery exception in file mode
- [#1572] fix get tablemeta fail in oracle when table name was lower case
- [#1663] fix get tablemeta fail when table name was keyword
- [#1666] fix restore connection's autocommit
- [#1643] fix serialize and deserialize in java.sql.Blob, java.sql.Clob
- [#1628] fix oracle support ROWNUM query
- [#1552] fix BufferOverflow when BranchSession size too large
- [#1609] fix thread unsafe of oracle keyword checker
- [#1599] fix thread unsafe of mysql keyword checker
- [#1607] fix NoSuchMethodError when the version of druid used < 1.1.3
- [#1581] fix missing some length in GlobalSession and FileTransactionStoreManager
- [#1594] fix nacos's default namespace
- [#1550] fix calculate BranchSession size missing xidBytes.length
- [#1558] fix NPE when the rpcMessage's body is null
- [#1505] fix bind public network address listen failed
- [#1539] fix nacos namespace setting does not take effect
- [#1537] fix nacos-config.txt missing store.db.driver-class-name property
- [#1522] fix ProtocolV1CodecTest testAll may be appears test not pass
- [#1525] fix when getAfterImage error, trx autocommit
- [#1518] fix EnhancedServiceLoader may be appears load class error
- [#1514] fix when lack serialization dependence can't generate undolog and report true
- [#1445] fix DefaultCoordinatorMetricsTest UT failed
- [#1481] fix TableMetaCache refresh problem in multiple datasource
optimize:
- [#1629] optimize the watcher efficiency of etcd3
- [#1661] optimize global_table insert transaction_name size
- [#1633] optimize branch transaction repeated reporting false
- [#1654] optimize wrong usage of slf4j
- [#1593] optimize and standardize server log
- [#1648] optimize transaction_name length when building the table
- [#1576] eliminate the impact of instructions reordering on session async committing task
- [#1618] optimize undolog manager and fix delete undolog support oracle
- [#1469] reduce the number of lock conflict exception
- [#1619] replace StringBuffer with StringBuilder
- [#1580] optimize LockKeyConflictException and change register method
- [#1574] optimize once delete GlobalSession locks for db mode when commit success
- [#1601] optimize typo
- [#1602] upgrade fastjson version to 1.2.60 for security issue
- [#1583] optimize get oracle primary index
- [#1575] add UT for RegisterTMRequest
- [#1559] optimize delay to delete the expired undo log
- [#1547] TableRecords delete jackson annotation
- [#1542] optimize AbstractSessionManager debug log
- [#1535] remove H2 and pgsql get primary index code and close resultSet
- [#1541] code clean
- [#1544] remove Chinese comment
- [#1533] refactor of the logics of Multi-configuration Isolation
- [#1493] add table meta checker switch
- [#1530] throw Exception when no index in the table
- [#1444] simplify operation of map
- [#1497] add seata-all dependencies
- [#1490] remove unnecessary code
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- BeiKeJieDeLiuLangMao
- jsbxyyx
- ldcsaa
- zjinlei
- l81893521
- ggndnn
- github-ygy
- chenxi-null
- tq02ksu
- AjaxXu
- finalcola
- lovepoem
- cmonkey
- xingfudeshi
- andyqian
- tswstarplanet
- zhengyangyong
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.8.0 (2019-08-16)
Release notes
Seata 0.8.0
Seata 0.8.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
feature:
- [#902] support oracle database in AT mode
- [#1447] support oracle batch operation
- [#1392] support undo log table name configurable
- [#1353] support mysql batch update and batch delete
- [#1379] support -Dkey=value SysConfig
- [#1365] support schedule check table mata
- [#1371] support mysql preparedStatement batch self-increment primary keys
- [#1337] support mysql batch insert for non-self-inc primary keys
- [#1235] support delete expired undolog use protobuf codec
- [#1235] support to delete undolog in back task use seata codec
- [#1323] support database driver class configuration item
bugfix:
- [#1456] fix xid would be duplicate in cluster mode
- [#1454] fix DateCompareUtils can not compare byte array
- [#1452] fix select for update retry get dirty value
- [#1443] fix serialize the type of timestamp lost nano value
- [#1374] fix store.mode get configuration inconsistent
- [#1409] fix map.toString() error
- [#1344] fix ByteBuffer allocates a fixed length, which cause BufferOverflowException
- [#1419] fix if the connection is autocommit=false will cause fail to delete
- [#1370] fix begin failed not release channel and throw exception
- [#1396] fix ClassNotFound problem for Nacos config implementation
- [#1395] fix check null channel
- [#1385] fix get SessionManager error when rollback retry timeout
- [#1378] fix clusterAddressMap did not remove the instance after the instance was offline
- [#1332] fix nacos script initialization the configuration value contains ’=‘ failed
- [#1341] fix multiple operations on the same record in the same local transaction, rollback failed
- [#1339] fix when image is EmptyTableRecords, rollback failed
- [#1314] fix if don't specify the startup parameters, db mode don't take effect
- [#1342] fix ByteBuffer allocate len error
- [#1333] fix netty memory leak
- [#1338] fix lock is not acquired when multiple branches have cross locks
- [#1334] fix lock key npe bug, when tcc use protobuf
- [#1313] fix DefaultFailureHandler check status NPE
optimize:
- [#1474] optimize data image compare log
- [#1446] optimize the server's schedule tasks
- [#1448] refactor executor class remove the duplicate code
- [#1408] change ChannelFactory package in TmRpcClientTest
- [#1432] implement equals and hashcode of the object that is used as the hash key
- [#1429] remove unused imports
- [#1426] fix syntax error
- [#1425] fix typo
- [#1356] optimize sql join
- [#1416] optimize some javadoc comments
- [#1417] optimize oracle keyword
- [#1404] optimize BranchStatus comments
- [#1414] optimize mysql keywords
- [#1407] disable unstable unit tests
- [#1398] optimize eureka registry serviceUrl with default port
- [#1364] optimize table columns name defined as constants
- [#1389] add the oracle support prompt information
- [#1375] add compareRows failed log
- [#1358] clean temporary file file runs when UT is finished
- [#1355] add test case for rpc protocol
- [#1357] code clean of Consul&Etcd config center implementations
- [#1345] code clean and modify log level
- [#1329] add
STORE_FILE_DIR
default value
Thanks to these contributors for their code commits. Please report an unintended omission.
- slievrly
- Justice-love
- l81893521
- ggndnn
- zjinlei
- andyqian
- cmonkey
- wangjin
- Arlmls
- lukairui
- kongwang
- lightClouds917
- xingfudeshi
- alicexiaoshi
- itxingqing
- wanghuizuo
- 15168326318
- github-ygy
- ujjboy
- leizhiyuan
- vikenlove
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.7.1 (2019-07-15)
Release notes
Seata 0.7.1
Seata 0.7.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Bugfix & Optimize
- [#1297] seata-spring add dependency seata-codec-all
- [#1305] fix unable to instantiate org.springframework.cloud.alibaba.seata.GlobalTransactionAutoConfiguration
- fix in the 0.7.0 version, unable to get the seata dependency problem from the central repository
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.7.0 (2019-07-12)
Release notes
Seata 0.7.0
Seata 0.7.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- [#1276] New RPC protocol
- [#1266] add enabled configuration for metrics (97)
- [#1236] support metrics for tc server
- [#1214] add config
shutdown.wait
and update version to 0.7.0-SNAPSHOT (1212) - [#1206] setting default values using trinomial operators
- [#1174] add nacos config initialization python script (1172)
- [#1145] Change LockMode from MEMORY to DB when the StoreMode is DB
- [#1125] Add protostuff as serializer of UndoLogParser.
- [#1007] support protobuf feature (97)
Bugfix & Optimize
- [#1286] bugfix: add some configuration and exclude log dependency (97)
- [#1278] bugfix: pass txId into TCC interceptor
- [#1274] 1. optimization SQL join
- [#1271] bugfix: @GlobalLock get error with Response (97, 1224)
- [#1270] bugfix: print error exception
- [#1269] bugfix: fix TMClinet reconnect exception
- [#1265] Invoke addBatch of targetStatement if not in global transaction
- [#1264] configuration:update ignore and coverage (97)
- [#1263] docs: add doc about contribution (97)
- [#1262] bugfix: fix find target class issue if scan the web scope bean such a… (97)
- [#1261] add warn log when fail to get auto-generated keys. (#1259) (97, 1259)
- [#1258] move metrics config keys and simplify metrics modules dependency
- [#1250] fix codecov for protobuf (97)
- [#1245] refactor metrics let it initialize by configuration
- [#1242] perfect sql
- [#1239] bugfix:fix CME in ZK discovery implementation. (97)
- [#1237] bugfix:server start and handle remain branch session may cause NPE (97)
- [#1232] Add unit tests for io.seata.common.util CompressUtil, DurationUtil, ReflectionUtil
- [#1230] prioritize global transaction scanner #1227 (97, 1227)
- [#1229] fix a typo (97)
- [#1225] optimize the name of seata config environment. (97, 1209)
- [#1222] fix bug of refresh cluster (1160)
- [#1221] bugfix: fix in which SQL and database field names are inconsistent#1217 (1217)
- [#1218] bugfix:containsPK ignoreCase (1217)
- [#1210] 1. optimize arrayList single value
- [#1207] All overriding methods must be preceded by @Override annotations.
- [#1205] remove useless code
- [#1202] output branchRollback failed log (97)
- [#1200] bugfix:DefaultCoreTest.branchRegisterTest (1199)
- [#1198] check the third-party dependencies license (1197)
- [#1195] Clear the transaction context in TCC prepare methed
- [#1193] Get lockmode by the storemode
- [#1190] remove unused semicolons (97, 540)
- [#1179] fix jackson default content
- [#1177] write session may be failed,throw TransactionException but hold lock. (97, 1154)
- [#1169] bugfix: use Set to avoid duplicate listeners. fixes #1126 (1126)
- [#1165] add a missing placeholder in INSERT_UNDO_LOG_SQL (1164)
- [#1162] Reset initialized flag & instance while destroy(). split [##1105 (983, 97)
- [#1159] bugfix: AT mode resourceId(row_key) too long (97, 1158)
- [#1150] updates seata's version in README.md (97)
- [#1148] bugfix:the buffer may cause overflows when sql statement is long
- [#1146] revise the package name of the module (97)
- [#1105] refactor TmRpcClient & RmClient for common use. (97)
- [#1075] Multiple environmental isolation
- [#768] #751 add event bus mechanism and apply it in tc
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.6.1 (2019-05-31)
Release notes
Seata 0.6.1
Seata 0.6.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
Bugfix & Optimize
- [#1099] UndoLogParser change to SPI
- [#1113] optimize check style
- [#1087] Remove unnecessary copy of bytes
- [#1090] Change the method definition of UndoLogParser for better extensibility
- [#1120] bugfix : use xid wrong when do branch commit and rollback
- [#1135] bugfix:zk vulnerability and optimize dependencies
- [#1138] bugfix: seata-server.bat classpath too long
- [#1117] bugfix: fix field type is datetime equals fail
- [#1115] modify seata-all & seata-bom deploy config
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.6.0 (2019-05-24)
Release notes
Seata 0.6.0
Seata 0.6.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- [#942] Store the transaction log into database
- [#1014] Support etcd3 as configuration center
- [#1060] Do data validation when undo
Bugfix & Optimize
- [#1064] bugfix:size wrong between xid and branchId
- [#1074] bugfix:typos and replace AIT's with lambdas
- [#824] Add time limit when transaction retry on the server
- [#1082] add Cache configuration instance
- [#1084] Refactor Charset using and blob utils
- [#1080] upgrade fastjson and nacos-client
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.5.2 (2019-05-17)
Release notes
Seata 0.5.2
Seata 0.5.2 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
Bugfix & Optimize
- [#987] optimize the use of reentrantLock instead of spinlock in concurrent scenarios within the same transaction
- [#943] fix configuration wait timeout when there is no corresponding file configuration item
- [#965] fix PreparedStatement where in,between problem
- [#929] optimize GlobalSession for the first time to wait for locks
- [#967] optimize partial log description
- [#970] fix unable to read flush-disk-mode configuration item problem
- [#916] optimize the readable index problem of decoding
- [#979] optimize copyright
- [#981] optimize pom dependencies, use caffine instead of guava cache, junit upgrade to junit5, use junit5 to transform original testng unit tests
- [#991] optimize the header of the core module import
- [#996] fix maven-surefire-plugin compilation error in mac environment
- [#994] Fix ByteBuffer multiple flip problem
- [#999] change the community's email subscription address
- [#861] optimize the FailureHandler to periodically get the retrieved transaction result and print the successful result
- [#802] optimize the lambda code style in GlobalTransactionalInterceptor
- [#1026] fix troubleshooting for data* code files, add local transaction file exclusion path
- [#1024] fix Consul module SPI configuration file path problem
- [#1023] add the seata-all.jar for client full dependency
- [#1029] fix the delay rollback caused by no channel when the client is restarting
- [#1027] fix release-seata can not generate zip file problem
- [#1033] fix createDependencyReducedPom to generate redundant xml problem
- [#1035] fix branchCommit/branchRollback in TCC mode, but branchId is null
- [#1040] refactor exceptionHandleTemplate and fix the problem that cannot be returned when the GlobalRollback branch throw exception
- [#1036] replace Chinese comment with English comment
- [#1051] optimize to check data changes when rollback, stop rollback if there is no data change
- [#1017] optimize the processing logic of mysql undo executor construct undo sql
- [#1063] fix the problem that the new transaction id conflict fails after the server is restarted after the server is restarted
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.5.1 (2019-04-30)
Release notes
Seata 0.5.1
Seata 0.5.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- [#774] support Etcd3 registration center
- [#793] support sofa-registry registration center
- [#856] add batch delete undolog processing
- [#786] support for branch transaction concurrency in global transactions
Bugfix & Optimize
- [#879] fix when batch delete undolog,the preparedStatement does not close
- [#945] add the releaseLock method in the LockManager interface to optimize the calling logic
- [#938] optimize the TransactionManager service loading logic
- [#913] optimize the module structure of the RPC integration framework
- [#795] optimize the performance of server node write files
- [#921] fix NPE exception when select for update
- [#925] optimize the same DefaultCoordinator instance when the server starts
- [#930] optimize field access modifiers
- [#907] fix hostname can't be null exception
- [#923] fix the problem that the key is not formatted when the nettyClientKeyPool connection is destroyed
- [#891] fix the NPE exception when using select union all
- [#888] fix copyright checkstyle verification
- [#901] fix parent node path does not exist when Zookeeper is registered
- [#904] optimize updated data query logic in UpdateExecutort
- [#802] optimize checkstyle and add plugins
- [#882] modify copyright, add copyright automatic plugin
- [#874] add the communication default configuration value
- [#866] fix unable to generate dubbo:reference proxy class
- [#877] fix concurrentModifyException when batch deleting undolog
- [#855] optimize the globalCommit always returns committed to the user in AT mode
- [#875] fix select for update, Boolean cast ResultSet failed
- [#830] fix RM late registration problem
- [#872] fix RegisterRMRequest decoding message length check is not accurate
- [#831] optimize CountDownLatch in MessageFuture and replace it with CompletableFuture
- [#834] fix non-SQLException in ExecuteTemplate does not throw a exception
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.5.0 (2019-04-19)
Release notes
Seata 0.5.0
Seata 0.5.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Compatibility
- [#809] Change groupId,artifactId, and package
- [#815] Add maven plugin to release seata with groupId io.seata
- [#790] Change the startup parameters of seata-server to support database-storage
- [#769] Modify the RPC protocol, remove the client's resolution of xid to be stateless
Feature
- [#774] optimizes the structure of config module and discovery module
- [#783] Allow users config the count for client report retry dynamicly
- [#791] replace magic judgement of timeout status with status enum
- [#836] Use maven-compiler-plugin to revision the version and add mvnw script to unify the maven version
- [#820] Add rollback on for GlobalTransaction
Bugfix
- [#772] Fix FileConfiguration config listener logic
- [#807] Optimize the setting of full name of FileBasedSessionManager
- [#804] bugfix:branchCommit retry always failed
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.4.2 (2019-04-12)
Release notes
Seata 0.4.2
Seata 0.4.2 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- [#704] add local file write ByteBuffer pool
- [#679] The existing registry adds the implementation of the close interface, which optimizes the server's elegant offline
- [#713] add local file writes enable compression for messages that exceed the configured size
- [#587] Added MySQL DDL statement support
- [#717] add Nacos Initialization Configuration Script Configuration and Completion Program Configuration File
- [#726] support for DBCP, C3P0, BoneCP, HikariCP and Tomcat-JDBC connection pools
- [#744] add ZooKeeper disconnection re-registration and subscription when reconnected
- [#728] Supports service discovery with Consul
Bugfix
- [#569] fix already jdk proxy and no target only traverses the first implementation interface problem
- [#721] fix ConfigFuture constructor timeout parameter does not work
- [#725] fix MergedSendRunnable channel is unexpectedly closed, and add fail-fast
- [#723] fix defaultServerMessageListener is not initialized
- [#746] fix the failure of the test module caused by the DataSourceManager SPI
- [#754] optimize Eureka registry
- [#750] fix undolog caused by DataSourceManager SPI cannot delete problem
- [#747] Delete MT mode, then will be replaced by TCC mode
- [#757] fix rollback caused by RPC exception when performing BranchRollback retry
- [#776] fix connection creation failure caused by toString exception when connection pool creates channel
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.4.1 (2019-03-29)
Release notes
Seata 0.4.1
Seata 0.4.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
- TBD
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.4.0 (2019-03-19)
Release notes
Seata 0.4.0
Seata 0.4.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- [#583] Add TCC model of Ant Financial to fescar, to suppot Local TCC bean,Dubbo TCC bean and SOFARPC TCC bean
- [#611] Apply p3c pmd plugin/rules
- [#627] Optimization dependency
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.3.1 (2019-03-15)
Release notes
Seata 0.3.1
Seata 0.3.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- [#557] add custom hook access point at each stage of the transaction process
- [#594] support Zookeeper Registration Center
Bugfix
- [#569] fix eureka renew url encode
- [#551] fix ConfigType NPE
- [#489] fix GlobalRollback request but not receive report
- [#598] fix blocker and critical level issues scanned by p3c
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.3.0 (2019-03-08)
Release notes
Seata 0.3.0
Seata 0.3.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- [#510] Support eureka registry center
- [#498] Implement local transaction mode with global locks and resolve local transaction isolation issues
Bugfix
- [#459] Fix mysql keyword generating sql problem as table name and column name
- [#312] Fix the original business sql no where condition generation sql error problem
- [#522] Fix file path security vulnerability
- Remove useless, format, optimize import, javadoc, copyright for all module code
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.2.3 (2019-03-02)
Release notes
Seata 0.2.3
Seata 0.2.3 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- [#478] Support redis registry and apollo configuration
- [#478] Support redis registry and apollo configuration
Bugfix
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.2.2 (2019-02-22)
Release notes
Seata 0.2.2
Seata 0.2.2 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
- Fixed several bugs
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.2.1 (2019-02-18)
Release notes
Seata 0.2.1
Seata 0.2.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- Support BETWEEN in update statement
- Add Random and RoundRobin LoadBalance
- Add dubbo-alibaba module support Alibaba Dubbo
Bugfix
- Fix NettyClientConfig variable name isPoolFifo-> isPoolLifo
- Fix fescar-dubbo filter SPI reference error
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.2.0 (2019-02-14)
Release notes
Seata 0.2.0
Seata 0.2.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
Feature
- Support MySQL distributed transaction automatic mode (AT)
- Supports Dubbo seamless integration
- Support for distributed transaction API
- Support Spring transaction annotation
- Support Mybatis、JPA
- Support Nacos Service Registration and Configuration Center
- Add Fescar-Server automatic recovery from file unfinished transaction operations to memory when restarting
- Support multiple IP environment, start server to specify IP parameters
Bugfix
- Fix Fescar-Server restart may cause XID duplication
- Fix Windows startup script $EXTRA_JVM_ARGUMENTS parameter error
- Fix distributed transaction local nested inner transaction commit/rollback causes outer transaction exception problem
- Fix local transaction commit exception, local transaction does not rollback problem
- Fix MySQL table alias resolution
other
- Upgrade depends on JDK version to 1.8
- Upgrade dependency Alibaba Dubbo to Apache Dubbo 2.7.0
- Optimize related dependency references
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.1.4 (2019-02-11)
Release notes
Seata 0.1.4
Seata 0.1.4 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
- Fixed several bugs
- Upgrade jdk version to 1.8
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.1.3 (2019-01-29)
Release notes
Seata 0.1.3
Seata 0.1.3 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
- Fixed several bugs
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.1.2 (2019-01-25)
Release notes
Seata 0.1.2
Seata 0.1.2 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
- Fixed several bugs
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.1.1 (2019-01-18)
Release notes
Seata 0.1.1
Seata 0.1.1 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
- Fixed several bugs
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
0.1.0 (2019-01-09)
Release notes
Seata 0.1.0
Seata 0.1.0 Released.
Seata is an easy-to-use, high-performance, open source distributed transaction solution.
The version is updated as follows:
- Support MySQL in AT Mode
- Support Dubbo
- API Provided
- Spring based annotation Provided
- Standalone server
Link
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases