1.5.0.md 27 KB

1.5.0

source |
binary

Release notes ### Seata 1.5.0 Seata 1.5.0 Released. Seata is an easy-to-use, high-performance, open source distributed transaction solution. The version is updated as follows: ### feature: - [[#4115](https://github.com/seata/seata/pull/4115)] support console management - [[#3472](https://github.com/seata/seata/pull/3472)] add redisLocker's lua mode - [[#3575](https://github.com/seata/seata/pull/3575)] support the mixed use of different storages of locks and sessions - [[#3374](https://github.com/seata/seata/pull/3374)] add a Executor for INSERT ON DUPLICATE KEY UPDATE - [[#3642](https://github.com/seata/seata/pull/3642)] provide an api to share tcc phase-1's params to phase-2 - [[#3064](https://github.com/seata/seata/pull/3064)] support configuring the order of the TM and TCC interceptor - [[#2852](https://github.com/seata/seata/pull/2852)] support configuring scan target for GlobalTransactionScanner - [[#3683](https://github.com/seata/seata/pull/3683)] support redis distributed lock to prevent multi TC competition - [[#3545](https://github.com/seata/seata/pull/3545)] TCC mode support idempotent and anti hanging - [[#3009](https://github.com/seata/seata/pull/3009)] support server start with springboot and config with application.yaml - [[#3652](https://github.com/seata/seata/pull/3652)] support APM with SkyWalking - [[#3823](https://github.com/seata/seata/pull/3823)] TCC mode supports customized parameters list of the method in phase two - [[#3642](https://github.com/seata/seata/pull/3642)] TCC mode's try method supports passing `BusinessActionContext` implicitly - [[#3856](https://github.com/seata/seata/pull/3856)] support edas-hsf RPC framework - [[#3880](https://github.com/seata/seata/pull/3880)] contributing md support chinese. - [[#2568](https://github.com/seata/seata/pull/2568)] support GlobalTransactionInterceptor expression - [[#3886](https://github.com/seata/seata/pull/3886)] support the registry center network preferences - [[#3869](https://github.com/seata/seata/pull/3869)] support get configuration from environment - [[#3906](https://github.com/seata/seata/pull/3906)] support SPI unload - [[#3668](https://github.com/seata/seata/pull/3668)] support kotlin coroutine - [[#3968](https://github.com/seata/seata/pull/3968)] support brpc-java RPC framework - [[#4134](https://github.com/seata/seata/pull/4134)] init the console basic code - [[#4268](https://github.com/seata/seata/pull/4268)] query global session in the file mode - [[#4281](https://github.com/seata/seata/pull/4281)] query global session and global lock in the redis mode - [[#4293](https://github.com/seata/seata/pull/4293)] get global lock in the file mode - [[#4335](https://github.com/seata/seata/pull/4335)] Realize configuration center upload configuration interactive script (nacos,etcd3) - [[#4360](https://github.com/seata/seata/pull/4360)] Realize configuration center upload configuration interactive script (apollo,consul,zk) - [[#4320](https://github.com/seata/seata/pull/4320)] realize the interface of console: get global session and global lock in the db mode - [[#4435](https://github.com/seata/seata/pull/4435)] console front-end page implementation - [[#4480](https://github.com/seata/seata/pull/4480)] implementation of DefaultAuthSigner - [[#3870](https://github.com/seata/seata/pull/3870)] make seata-bom be the real Bill-Of-Material - [[#3487](https://github.com/seata/seata/pull/3487)] add db realization for distribute lock - [[#3889](https://github.com/seata/seata/pull/3889)] registry add heartbeat - [[#3951](https://github.com/seata/seata/pull/3951)] support zstd compressor - [[#2838](https://github.com/seata/seata/pull/2838)] Saga support auto configuration in the spring boot project ### bugfix: - [[#3497](https://github.com/seata/seata/pull/3497)] fix tcc phase two response timeout exception - [[#3686](https://github.com/seata/seata/pull/3686)] fix NPE and wrong cluster name of Apollo - [[#3702](https://github.com/seata/seata/pull/3702)] fix some comments - [[#3716](https://github.com/seata/seata/pull/3716)] fix the problem in the findTargetClass method - [[#3717](https://github.com/seata/seata/pull/3717)] fix typo of interval - [[#3773](https://github.com/seata/seata/pull/3773)] fix consul not found tc cluster - [[#3695](https://github.com/seata/seata/pull/3695)] fix mariadb unable to create XA connection - [[#3783](https://github.com/seata/seata/pull/3783)] fix the problem that store mode does not take effect - [[#3740](https://github.com/seata/seata/pull/3740)] fix that `LocalThread` is not cleared when the `Saga` transaction ends - [[#3792](https://github.com/seata/seata/pull/3792)] fix the Server can't find redis-host property - [[#3828](https://github.com/seata/seata/pull/3828)] fix StringUtils StackOverflowError - [[#3817](https://github.com/seata/seata/pull/3817)] fix TC SkyWalking topo calling node not gather - [[#3803](https://github.com/seata/seata/pull/3803)] fix ReflectionUtil throw unexpected exception - [[#3879](https://github.com/seata/seata/pull/3879)] fix postgresql multi schema throw not found channel exception - [[#3881](https://github.com/seata/seata/pull/3881)] fix getConfig with different default value return the first - [[#3897](https://github.com/seata/seata/pull/3897)] fix LocalDataTime type in FastjsonUndoLogParser can't be rollback - [[#3901](https://github.com/seata/seata/pull/3901)] fix seataio/seata-server servlet-api conflict - [[#3931](https://github.com/seata/seata/pull/3931)] fix the wrong path and filename when dump the jvm memory for analysis - [[#3978](https://github.com/seata/seata/pull/3978)] fix NPE cause by future timeout - [[#4266](https://github.com/seata/seata/pull/4266)] fix register branch and release lock failed when the size of rows that modified is greater than 1000 in oracle - [[#3949](https://github.com/seata/seata/pull/3949)] fix the problem that `nacos-config.py` will not skip blank options. fix bug that split options may cause content loss - [[#3988](https://github.com/seata/seata/pull/3988)] fix the problem that nacos not found user when password has special characters - [[#3998](https://github.com/seata/seata/pull/3998)] fix the NPE of jedis multi.exec - [[#4011](https://github.com/seata/seata/pull/4011)] fix can not get properties of distributed-lock-table in springboot - [[#4025](https://github.com/seata/seata/pull/4025)] fix potential database resource leak - [[#4023](https://github.com/seata/seata/pull/4023)] fix the problem that the xid is not cleared in some scenes of dubbo - [[#4039](https://github.com/seata/seata/pull/4039)] fix RM did not clear XID after the local transaction threw an exception - [[#4032](https://github.com/seata/seata/pull/4032)] fix ApplicationContext already closed problem when Seata server using ShutdownHook to destroy - [[#4074](https://github.com/seata/seata/pull/4074)] fix prevents XA mode resource suspension - [[#4107](https://github.com/seata/seata/pull/4107)] fix deadlock problems during project construction - [[#4158](https://github.com/seata/seata/pull/4158)] fix the logback can't load the `RPC_PORT` - [[#4162](https://github.com/seata/seata/pull/4162)] fix correct built-in properties for redis registry - [[#4165](https://github.com/seata/seata/pull/4165)] fix `StringUtils.toString(obj)` throw `ClassCastException` when the obj is primitive data array - [[#4169](https://github.com/seata/seata/pull/4169)] fix xa mode originalConnection has been closed, cause PhaseTwo fail to execute - [[#4177](https://github.com/seata/seata/pull/4177)] fix the problem of accidentally releasing the global lock - [[#4174](https://github.com/seata/seata/pull/4174)] fix delete undo log connection already closed - [[#4189](https://github.com/seata/seata/pull/4189)] fix the `kafka-appender.xml` and `logstash-appender.xml` - [[#4213](https://github.com/seata/seata/pull/4213)] fix code for "sessionMode" not execute problem - [[#4220](https://github.com/seata/seata/pull/4220)] fix some problems with `zstd` compressor and add the version of the `kotlin-maven-plugin` - [[#4222](https://github.com/seata/seata/pull/4222)] fix could not rollback when insert field list is empty - [[#4253](https://github.com/seata/seata/pull/4253)] update executor store the actually modified columns but not only the columns in set condition - [[#4276](https://github.com/seata/seata/pull/4276)] fix seata-test module UT not work - [[#4278](https://github.com/seata/seata/pull/4278)] fix the problem that mysql's Blob/Clob/NClob data type cannot be deserialized - [[#4302](https://github.com/seata/seata/pull/4302)] fix the problem that other ORMs may not be able to obtain the auto-incrementing primary key value - [[#4233](https://github.com/seata/seata/pull/4233)] fix data remanence problems in lock and branch under specific circumstances. - [[#4308](https://github.com/seata/seata/pull/4308)] fix the TableMetaCache parsing problem with the same table under multiple Postgresql schemas - [[#4326](https://github.com/seata/seata/pull/4326)] fix inability to build Executor when using mariadb driver - [[#4355](https://github.com/seata/seata/pull/4355)] fix mysql-loadbalance resource id error - [[#4310](https://github.com/seata/seata/pull/4310)] fix the problem that failed to obtain the self increment ID of MySQL database through "select last_insert_id" - [[#4331](https://github.com/seata/seata/pull/4331)] fix dirty write check exception that may occur when using ONLY_CARE_UPDATE_COLUMNS configuration - [[#4228](https://github.com/seata/seata/pull/4228)] fix resource suspension in xa mode caused by choose other ip as channel alternative - [[#4408](https://github.com/seata/seata/pull/4408)] fix the invalid environment variable in container env - [[#4441](https://github.com/seata/seata/pull/4441)] fix the problem that pipelined resources are not closed in redis mode and add branchSession judge branchSessions is not null - [[#4438](https://github.com/seata/seata/pull/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](https://github.com/seata/seata/pull/4432)] fix the inability to get some remote configurations - [[#4452](https://github.com/seata/seata/pull/4452)] fix the change log of 'service.disableGlobalTransaction' config - [[#4449](https://github.com/seata/seata/pull/4449)] fix redis mode page npe and optimize get globalSession on average - [[#4459](https://github.com/seata/seata/pull/4459)] fix the failure to obtain before image and after image on oracle and pgsql of the develop branch - [[#4471](https://github.com/seata/seata/pull/4471)] in branch 'develop', fix the error when service.vgroupMapping change - [[#4474](https://github.com/seata/seata/pull/4474)] fix Mysql multi-bit Bit type field rollback error - [[#4492](https://github.com/seata/seata/pull/4492)] fix the failure to update cluster list dynamically when use eureka of the develop branch - [[#4535](https://github.com/seata/seata/pull/4535)] fix FileSessionManagerTest fail - [[#4561](https://github.com/seata/seata/pull/4561)] fix allSessions/findGlobalSessions may return null and cause npe - [[#4505](https://github.com/seata/seata/pull/4505)] fix fastjson serialization of time data types - [[#4579](https://github.com/seata/seata/pull/4579)] fix prepareUndoLogAll of MySQLInsertOrUpdateExecutor - [[#4005](https://github.com/seata/seata/pull/4005)] fix PK constraint name isn't the same as the unique index name which is belong to PK - [[#4062](https://github.com/seata/seata/pull/4062)] fix saga complex parameter deserialization problem - [[#4199](https://github.com/seata/seata/pull/4199)] fix rpc tm request timeout - [[#4352](https://github.com/seata/seata/pull/4352)] fix some problem of the sql parser - [[#4487](https://github.com/seata/seata/pull/4487)] fix remove Pagination hideOnlyOnePage attribute - [[#4449](https://github.com/seata/seata/pull/4449)] fix optimize redis limit and fix redis page bug - [[#4608](https://github.com/seata/seata/pull/4608)] fix test case - [[#3110](https://github.com/seata/seata/pull/3110)] fix the problem of unit test ### optimize: - [[#4163](https://github.com/seata/seata/pull/4163)] improve CONTRIBUTING docs - [[#3678](https://github.com/seata/seata/pull/3678)] supplement missing configuration and new version documents - [[#3654](https://github.com/seata/seata/pull/3654)] fix typo,applicationContex -> applicationContext - [[#3615](https://github.com/seata/seata/pull/3615)] asynchronous deletion after the transaction is committed - [[#3687](https://github.com/seata/seata/pull/3687)] fix the case that could not retry acquire global lock - [[#3689](https://github.com/seata/seata/pull/3689)] modify the attribute prefix in the file file.properties - [[#3528](https://github.com/seata/seata/pull/3528)] optimize the memory footprint of redis mode - [[#3700](https://github.com/seata/seata/pull/3700)] optimize the speed of buildLockKey - [[#3588](https://github.com/seata/seata/pull/3588)] optimize the logic of datasource auto proxy - [[#3626](https://github.com/seata/seata/pull/3626)] remove repeat change status - [[#3722](https://github.com/seata/seata/pull/3722)] add the basic code of distributed lock - [[#3713](https://github.com/seata/seata/pull/3713)] unified the default value of enableClientBatchSendRequest - [[#3120](https://github.com/seata/seata/pull/3120)] optimize `Configuration` and add unit tests - [[#3735](https://github.com/seata/seata/pull/3735)] do not load `LoadBalance` if not necessary - [[#3770](https://github.com/seata/seata/pull/3770)] close the `Closeable` and optimize some code - [[#3627](https://github.com/seata/seata/pull/3627)] use TreeMap instead of the LinkedHashMap in TableMeta to compatible high level MySQL - [[#3760](https://github.com/seata/seata/pull/3760)] opt the logback's config of `seata-server` - [[#3765](https://github.com/seata/seata/pull/3765)] Transfer the operation of adding configuration class from 'AutoConfiguration' to 'EnvironmentPostProcessor' - [[#3730](https://github.com/seata/seata/pull/3730)] Refactoring the code of TCC mode - [[#3820](https://github.com/seata/seata/pull/3820)] add column `action_name` to the `tcc_fence_log` - [[#3738](https://github.com/seata/seata/pull/3738)] `JacksonUndoLogParser` supports to parsing `LocalDateTime` - [[#3794](https://github.com/seata/seata/pull/3794)] optimize the packaging of `seata-server` - [[#3795](https://github.com/seata/seata/pull/3795)] optimize zk registry lookup performance - [[#3840](https://github.com/seata/seata/pull/3840)] optimiza `apm-skwalking` operation method to generate rules - [[#3834](https://github.com/seata/seata/pull/3834)] optimize `seata-distribution` add `apm-seata-skywalking` - [[#3847](https://github.com/seata/seata/pull/3847)] optimize ConcurrentHashMap.newKeySet replace ConcurrentSet - [[#3311](https://github.com/seata/seata/pull/3311)] supports reading all configurations from a single Consul key - [[#3849](https://github.com/seata/seata/pull/3849)] optimize string concat - [[#3890](https://github.com/seata/seata/pull/3890)] optimize only the inserted fields are checked - [[#3895](https://github.com/seata/seata/pull/3895)] optimize decode exception - [[#3898](https://github.com/seata/seata/pull/3898)] add jib-maven-plugin - [[#3904](https://github.com/seata/seata/pull/3904)] ehance metrics and fix seata-server UT not work - [[#3212](https://github.com/seata/seata/pull/3212)] optimize recognize sql in limit and order by - [[#3905](https://github.com/seata/seata/pull/3905)] optimize nacos-config.sh to support ash - [[#3935](https://github.com/seata/seata/pull/3935)] optimize Send redis command at one time using pipeline - [[#3916](https://github.com/seata/seata/pull/3916)] optimize determine whether the server in the register is alive - [[#3918](https://github.com/seata/seata/pull/3918)] cache reflection results of the fields and methods - [[#3898](https://github.com/seata/seata/pull/3898)] add jib-maven-plugin - [[#3907](https://github.com/seata/seata/pull/3907)] optimize set server port - [[#3912](https://github.com/seata/seata/pull/3912)] support config JVM param in env - [[#3939](https://github.com/seata/seata/pull/3939)] use map instead of if else judge for more change in the future - [[#3955](https://github.com/seata/seata/pull/3955)] add a start banner for seata - [[#3954](https://github.com/seata/seata/pull/3954)] replace @Deprecated getOwnernName to getOwnerName in druid - [[#3981](https://github.com/seata/seata/pull/3981)] optimize service port priority - [[#4013](https://github.com/seata/seata/pull/4013)] optimize channel alive check - [[#3982](https://github.com/seata/seata/pull/3982)] optimize readme doc and upgrade some dependencies - [[#3949](https://github.com/seata/seata/pull/3949)] `nacos-config.py` support default parameters and optional input parameters - [[#3991](https://github.com/seata/seata/pull/3991)] disable listening in the FileConfiguration center in Springboot - [[#3994](https://github.com/seata/seata/pull/3994)] Optimize the mechanism of periodically deleting tasks in the `tcc_fence_log` table - [[#3327](https://github.com/seata/seata/pull/3327)] supports reading all configurations from a single Etcd3 key - [[#4001](https://github.com/seata/seata/pull/4001)] support to read YML configuration from Nacos, Zookeeper, Consul, Etcd3 - [[#4017](https://github.com/seata/seata/pull/4017)] optimize file configuration - [[#4018](https://github.com/seata/seata/pull/4018)] optimize Apollo configuration - [[#4021](https://github.com/seata/seata/pull/4021)] optimize Nacos、Consul、Zookeeper、Etcd3 configuration - [[#4034](https://github.com/seata/seata/pull/4034)] optimize Nacos, Consul, Zookeeper and Etcd3 configuration Junit test Class - [[#4055](https://github.com/seata/seata/pull/4055)] optimize NetUtil#getLocalAddress0 - [[#4086](https://github.com/seata/seata/pull/4086)] optimize lazily load branch transactions and task scheduling - [[#4056](https://github.com/seata/seata/pull/4056)] optimize the DurationUtil - [[#4103](https://github.com/seata/seata/pull/4103)] optimize AbstractLockManager#collectRowLocks logic - [[#3733](https://github.com/seata/seata/pull/3733)] optimize acquire lock logic - [[#4144](https://github.com/seata/seata/pull/4144)] support default configuration of tx-service-group - [[#4157](https://github.com/seata/seata/pull/4157)] optimize client batch sending. - [[#4191](https://github.com/seata/seata/pull/4191)] support rpc timeout can be customized. - [[#4216](https://github.com/seata/seata/pull/4216)] no more attempt to clean undolog for none AT mode - [[#4176](https://github.com/seata/seata/pull/4176)] use expire key instead hash when using redis as registry center. - [[#4196](https://github.com/seata/seata/pull/4196)] tc batch response to client. - [[#4212](https://github.com/seata/seata/pull/4212)] optimize the interface of the console - [[#4237](https://github.com/seata/seata/pull/4237)] skip check lock when all the before image is empty - [[#4251](https://github.com/seata/seata/pull/4251)] optimize partial code handling - [[#4262](https://github.com/seata/seata/pull/4262)] optimize tcc module code handling - [[#4235](https://github.com/seata/seata/pull/4235)] optimize instance saved in eureka - [[#4277](https://github.com/seata/seata/pull/4277)] optimize acquire lock return fail-fast code in redis-pipeline mode. - [[#4284](https://github.com/seata/seata/pull/4284)] support authentication of MSE-Nacos with ak/sk - [[#4299](https://github.com/seata/seata/pull/4299)] optimize exceptions to make them friendly - [[#4300](https://github.com/seata/seata/pull/4300)] optimize let DefaultCoordinator invoke NettyRemotingServer's close method,no longer closed by ServerRunner - [[#4270](https://github.com/seata/seata/pull/4270)] improve the performance of global commit and global rollback, asynchronous branch transaction cleanup - [[#4307](https://github.com/seata/seata/pull/4307)] when in TCC mode there is no need to delete global locks - [[#4303](https://github.com/seata/seata/pull/4303)] `tcc_fence_log` table hanging log records are deleted asynchronously - [[#4328](https://github.com/seata/seata/pull/4328)] upload configuration script support comments - [[#4305](https://github.com/seata/seata/pull/4305)] optimize acquire global lock fail error log print on tc - [[#4336](https://github.com/seata/seata/pull/4336)] add SQL exception prompt not supported by AT mode - [[#4359](https://github.com/seata/seata/pull/4359)] support configuration metadata read from environment variables - [[#4247](https://github.com/seata/seata/pull/4247)] add tests for `java17` and `springboot` in the `github/actions` - [[#4353](https://github.com/seata/seata/pull/4353)] Slimming down for the `seata-all.jar` - [[#4393](https://github.com/seata/seata/pull/4393)] skip reload for redis & db mode - [[#4400](https://github.com/seata/seata/pull/4400)] asynchronous tasks handle global transactions in parallel - [[#4391](https://github.com/seata/seata/pull/4391)] commit/rollback retry timeout event - [[#4409](https://github.com/seata/seata/pull/4409)] add copyright header to test classes - [[#4282](https://github.com/seata/seata/pull/4282)] optimize build UndoItem logic - [[#4407](https://github.com/seata/seata/pull/4407)] file mode does not require lazy processing of sessions - [[#4436](https://github.com/seata/seata/pull/4436)] optimize global session query in file mode - [[#4431](https://github.com/seata/seata/pull/4431)] limit the number of queries in Redis storage mode - [[#4465](https://github.com/seata/seata/pull/4465)] optimize client version transfer in tc batch response to client mode. - [[#4469](https://github.com/seata/seata/pull/4469)] optimize the way to get configuration in DB mode of console - [[#4478](https://github.com/seata/seata/pull/4478)] optimize Nacos config and naming properties - [[#4522](https://github.com/seata/seata/pull/4522)] optimize GC parameters in JVM - [[#4517](https://github.com/seata/seata/pull/4517)] enhance fail/timeout status metric and log level - [[#4451](https://github.com/seata/seata/pull/4451)] filesessionmanager changed to singleton and optimized task thread pool processing - [[#4551](https://github.com/seata/seata/pull/4551)] optimize metrics rt statistics - [[#4574](https://github.com/seata/seata/pull/4574)] support accessKey/secretKey auto configuration - [[#4583](https://github.com/seata/seata/pull/4583)] use HmacSHA256 instead of HmacSHA1 for ram signature - [[#4591](https://github.com/seata/seata/pull/4591)] optimize the default value of the switch - [[#3780](https://github.com/seata/seata/pull/3780)] optimize upgrade the Druid version - [[#3797](https://github.com/seata/seata/pull/3797)] optimize support instance `BusinessActionContext` outside the TCC try method - [[#3909](https://github.com/seata/seata/pull/3909)] optimize `collectRowLocks` method - [[#3763](https://github.com/seata/seata/pull/3763)] optimize github actions - [[#4345](https://github.com/seata/seata/pull/4345)] optimize fix the path of the package - [[#4346](https://github.com/seata/seata/pull/4346)] optimize the log of the server and remove lombok - [[#4348](https://github.com/seata/seata/pull/4348)] optimize Unified management the versions of maven-plugin - [[#4354](https://github.com/seata/seata/pull/4354)] optimize the tests of `SAGA` - [[#4227](https://github.com/seata/seata/pull/4227)] optimize the versions of the dependencies - [[#4403](https://github.com/seata/seata/pull/4403)] optimize disable `SAGA` tests - [[#4453](https://github.com/seata/seata/pull/4453)] optimize upgrade eureka-clients and xstream dependencies - [[#4481](https://github.com/seata/seata/pull/4481)] optimize nacos config and naming properties - [[#4477](https://github.com/seata/seata/pull/4477)] optimize debug log and fix typo - [[#4484](https://github.com/seata/seata/pull/4484)]optimize the log of TM/RM register - [[#3874](https://github.com/seata/seata/pull/4484)] optimize Add logo of registered enterprise,and Change image source to Alicdn - [[#4458](https://github.com/seata/seata/pull/4458)] optimize fix the README.md of metrices module - [[#4482](https://github.com/seata/seata/pull/4482)] optimize remove duplicated word ### test: Thanks to these contributors for their code commits. Please report an unintended omission. - [slievrly](https://github.com/slievrly) - [wangliang181230](https://github.com/wangliang181230) - [a364176773](https://github.com/a364176773) - [lvekee](https://github.com/lvekee) - [caohdgege](https://github.com/caohdgege) - [lightClouds917](https://github.com/lightClouds917) - [objcoding](https://github.com/objcoding) - [siyu](https://github.com/Pinocchio2018) - [GoodBoyCoder](https://github.com/GoodBoyCoder) - [pengten](https://github.com/pengten) - [Bughue](https://github.com/Bughue) - [doubleDimple](https://github.com/doubleDimple) - [zhaoyuguang](https://github.com/zhaoyuguang) - [liuqiufeng](https://github.com/liuqiufeng) - [jsbxyyx](https://github.com/jsbxyyx) - [lcmvs](https://github.com/lcmvs) - [onlinechild](https://github.com/onlinechild) - [xjlgod](https://github.com/xjlgod) - [h-zhi](https://github.com/h-zhi) - [tanzzj](https://github.com/tanzzj) - [miaoxueyu](https://github.com/miaoxueyu) - [selfishlover](https://github.com/selfishlover) - [tuwenlin](https://github.com/tuwenlin) - [dmego](https://github.com/dmego) - [xiaochangbai](https://github.com/xiaochangbai) - [Rubbernecker](https://github.com/Rubbernecker) - [ruanun](https://github.com/ruanun) - [huan415](https://github.com/huan415) - [drgnchan](https://github.com/drgnchan) - [cmonkey](https://github.com/cmonkey) - [13414850431](https://github.com/13414850431) - [ls9527](https://github.com/ls9527) - [xingfudeshi](https://github.com/xingfudeshi) - [spilledyear](https://github.com/spilledyear) - [kaka2code](https://github.com/kaka2code) - [iqinning](https://github.com/iqinning) - [yujianfei1986](https://github.com/yujianfei1986) - [elrond-g](https://github.com/elrond-g) - [jameslcj](https://github.com/jameslcj) - [zhouchuhang](https://github.com/zch0214) - [xujj](https://github.com/XBNGit) - [mengxzh](https://github.com/mengxzh) - [portman](https://github.com/iportman) - [anselleeyy](https://github.com/anselleeyy) - [wangyuewen](https://github.com/2858917634) - [imherewait](https://github.com/imherewait) - [wfnuser](https://github.com/wfnuser) - [zhixing](https://github.com/chenlei3641) 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