zettadb / kunlun

KunlunBase is a distributed relational database management system(RDBMS) with complete NewSQL capabilities and robust transaction ACID guarantees and is compatible with standard SQL. Applications which used PostgreSQL or MySQL can work with KunlunBase as-is without any code change or rebuild because KunlunBase supports both PostgreSQL and MySQL connection protocols and DML SQL grammars. MySQL DBAs can quickly work on a KunlunBase cluster because we use MySQL as storage nodes of KunlunBase. KunlunBase can elastically scale out as needed, and guarantees transaction ACID under error conditions, and KunlunBase fully passes TPC-C, TPC-H and TPC-DS test suites, so it not only support OLTP workloads but also OLAP workloads. Application developers can use KunlunBase to build IT systems that handles terabytes of data, without any effort on their part to implement data sharding, distributed transaction processing, distributed query processing, crash safety, high availability, strong consistency, horizontal scalability. All these powerful features are provided by KunlunBase. KunlunBase supports powerful and user friendly cluster management, monitor and provision features, can be readily used as DBaaS.
http://www.kunlunbase.com
Apache License 2.0
143 stars 20 forks source link

rollback a readonly transaction make the progress crash #427

Closed jd-zhang closed 3 years ago

jd-zhang commented 3 years ago

Issue migrated from trac ticket # 42

component: computing nodes | priority: major | resolution: fixed

2021-04-15 16:40:50: @jd-zhang created the issue


CREATE TABLE tenk1 ( unique1 int4, unique2 int4, two int4, four int4, ten int4, twenty int4, hundred int4, thousand int4, twothousand int4, fivethous int4, tenthous int4, odd int4, even int4, stringu1 name, stringu2 name, string4 name ); CREATE TABLE INT4_TBL(f1 int4); CREATE TABLE FLOAT8_TBL(f1 float8);

begin;

select count(*) from tenk1 x where x.unique1 in (select a.f1 from int4_tbl a,float8_tbl b where a.f1=b.f1) and x.unique1 = 0 and x.unique1 in (select aa.f1 from int4_tbl aa,float8_tbl bb where aa.f1=bb.f1);

tdb2=# rollback; WARNING: AbortTransaction while in ABORT state ERROR: MySQL storage node (2, 2) returned error: 1399, XAER_RMFAIL: The command cannot be executed when global transaction is in the NON-EXISTING state. server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request.

jd-zhang commented 3 years ago

2021-05-19 19:19:56: @david-zhao

jd-zhang commented 3 years ago

2021-05-19 19:19:56: @david-zhao changed owner from kunlun to david

jd-zhang commented 3 years ago

2021-05-19 19:19:56: @david-zhao changed status from assigned to accepted

jd-zhang commented 3 years ago

2021-05-25 10:21:55: @david-zhao commented


Milestone renamed

jd-zhang commented 3 years ago

2021-05-25 10:21:55: @david-zhao

jd-zhang commented 3 years ago

2021-07-19 15:20:36: @charleszettadb commented


VERIFIED FIXED

jd-zhang commented 3 years ago

2021-07-19 15:20:36: @charleszettadb set resolution to fixed

jd-zhang commented 3 years ago

2021-07-19 15:20:36: @charleszettadb changed status from accepted to closed