Coder Social home page Coder Social logo

polardb / polardbx-cdc Goto Github PK

View Code? Open in Web Editor NEW
66.0 13.0 43.0 224.28 MB

polardbx-cdc is a core component of PolarDB-X which is responsible for global binary log generation, publication and subscription.

License: Apache License 2.0

Dockerfile 0.02% Shell 0.34% Python 0.01% Java 99.54% Thrift 0.10%
binlog mysql-binlog mysql-dump mysqlbinlog mysql cdc replication change-master global-binary-log

polardbx-cdc's Introduction

LICENSE Language

中文文档

What is PolarDB-X CDC ?

PolarDB-X CDC is a core component of PolarDB-X which is responsible for global binary log generation, publication and subscription.

With PolarDB-X CDC, PolarDB-X database can provide binary log fully compatible with MySQL binary log, which can be consumed seamlessly by MySQL binary log tools. And it can play the role of MySQL slave through MySQL Replication protocol.

The core features of PolarDB-X CDC include the following:

  • Global Binlog: Merges the original Binlog generated by all PolarDB-X DN nodes into a single global queue, providing a logical Binlog stream that ensures transaction integrity and orderliness, and can provide stronger data consistency guarantees.

  • Binlog-X: Generates multiple logical Binlog streams in real-time to solve the bottleneck problem of Global Binlog in large-scale clusters, and provides stronger distributed scalability capabilities.

  • Replica: Compatible with the MySQL Replication protocol, providing the ability to serve as a MySQL or PolarDB-X standby database.

Quick Start

The PolarDB-X CDC is a builtin component of the PolarDB-X.

Try PolarDB-X CDC by following these steps:

  1. Start a PolarDB-X

See CDC Node Creation Guide to create a PolarDB-X instance with CDC nodes.

  1. Try MySQL Binary Log Commands

PolarDB-X is fully compatible with MySQL binary log related commands, such as SHOW BINARY LOGS, SHOW BINLOG EVENTS, etc. All commands can be found in the PolarDB-X Binlog Commands Introduction.

  1. PolarDB-X as MySQL Slave

PolarDB-X supports MySQL Replica related commands, such as CHANGE MASTER TOSTART/STOP/RESET SLAVESHOW SLAVE STATUS, etc. you can use PolarDB-X as MySQL slave, refer to Replica Reference Manual for command details.

See more docs about PolarDB-X.

License

PolarDB-X CDC is under Apache License 2.0, see the license for details.

Contributing

See how to contribute.

polardbx-cdc's People

Contributors

agilulf avatar iefnaf avatar lulu2panpan avatar oldbread3 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

polardbx-cdc's Issues

show slave status报io exception

cdc版本用的是lastest,由于镜像版本和galaxycdc版本对应关系没找到,所以不知道lastest是哪个版本.
mysql> show slave status\G
ERROR 3009 (HY000): [14a1336302402000][10.42.7.85:3306][rpl]UNAVAILABLE: io exception
集群运行状态正常:
[root@localhost polardb-x]# kubectl get pods
NAME READY STATUS RESTARTS AGE
pxtest-29nk-cdc-half-6f6664c556-nz8b8 2/2 Running 0 26m
pxtest-29nk-cn-zone-a-67f46c7c86-jv5z5 3/3 Running 0 10m
pxtest-29nk-dn-0-cands1-0 3/3 Running 0 6d1h
pxtest-29nk-dn-0-cands2-0 3/3 Running 0 6d1h
pxtest-29nk-dn-0-log-0 3/3 Running 0 6d1h
pxtest-29nk-gms-cand-zone-a-0 3/3 Running 0 21m
pxtest-29nk-gms-cand-zone-b-0 3/3 Running 0 20m
pxtest-29nk-gms-log-zone-c-0 3/3 Running 0 19m

CDC错误日志:

ERROR 9001 (HY000) at line 534: [14a10a6ddf801000][10.42.9.50:3306][grafana]ERR-CODE: [PXC-9001][ERR_GMS_GENERIC] Identifier name '_local_UQE_library_element_connection_element_id_kind_connection_id' is too long (max = 64).
2022-07-20 17:51:14.863 [qtp300104620-42] INFO c.a.p.binlog.daemon.rest.RestServer - 127.0.0.1 - - [20/Jul/2022:09:51:14 +0000] "GET //127.0.0.1:3007/cdc/metrics HTTP/1.1" 200 6 9
2022-07-20 17:51:15.505 [TimerTask-NodeReport] ERROR c.a.p.b.task.AbstractBinlogTimerTask - exec timer task fail NodeReport 1000
org.springframework.jdbc.UncategorizedSQLException:
### Error updating database. Cause: java.sql.SQLException: The consensus follower is not allowed to to do current operation.
### The error may exist in com/aliyun/polardbx/binlog/dao/NodeInfoMapper.java (best guess)
### The error may involve com.aliyun.polardbx.binlog.dao.NodeInfoMapper.insert-Inline
### The error occurred while setting parameters
### SQL: insert into binlog_node_info (gmt_created, gmt_modified, cluster_id, container_id, ip, daemon_port, available_ports, status, core, mem, gmt_heartbeat, role, cluster_type) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
### Cause: java.sql.SQLException: The consensus follower is not allowed to to do current operation.
; uncategorized SQLException for SQL []; SQL state [HY000]; error code [3934]; The consensus follower is not allowed to to do current operation.; nested exception is java.sql.SQLException: The consensus follower is not allowed to to do current operation.
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:84)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440)
at com.sun.proxy.$Proxy17.insert(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:271)
at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:62)
at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:152)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:85)
at com.sun.proxy.$Proxy31.insert(Unknown Source)
at org.mybatis.dynamic.sql.util.mybatis3.MyBatis3Utils.insert(MyBatis3Utils.java:93)
at com.aliyun.polardbx.binlog.dao.NodeInfoMapper.insertSelective(NodeInfoMapper.java:212)
at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
at org.apache.ibatis.binding.MapperProxy$DefaultMethodInvoker.invoke(MapperProxy.java:166)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:85)
at com.sun.proxy.$Proxy31.insertSelective(Unknown Source)
at com.aliyun.polardbx.binlog.daemon.schedule.NodeReporter.exec(NodeReporter.java:90)
at com.aliyun.polardbx.binlog.task.AbstractBinlogTimerTask$1.run(AbstractBinlogTimerTask.java:55)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Caused by: java.sql.SQLException: The consensus follower is not allowed to to do current operation.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1915)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1254)
at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tomcat.jdbc.pool.StatementFacade$StatementProxy.invoke(StatementFacade.java:114)
at com.sun.proxy.$Proxy30.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.update(PreparedStatementHandler.java:47)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.update(RoutingStatementHandler.java:74)
at org.apache.ibatis.executor.ReuseExecutor.doUpdate(ReuseExecutor.java:52)
at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:117)
at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:76)
at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:197)
at org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:184)
at sun.reflect.GeneratedMethodAccessor55.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426)
... 16 common frames omitted
2022-07-20 17:51:16.501 [TimerTask-NodeReport] ERROR c.a.p.b.task.AbstractBinlogTimerTask - exec timer task fail NodeReport 1000
org.springframework.jdbc.UncategorizedSQLException:
### Error updating database. Cause: java.sql.SQLException: The consensus follower is not allowed to to do current operation.
### The error may exist in com/aliyun/polardbx/binlog/dao/NodeInfoMapper.java (best guess)
### The error may involve com.aliyun.polardbx.binlog.dao.NodeInfoMapper.insert-Inline
### The error occurred while setting parameters
### SQL: insert into binlog_node_info (gmt_created, gmt_modified, cluster_id, container_id, ip, daemon_port, available_ports, status, core, mem, gmt_heartbeat, role, cluster_type) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
### Cause: java.sql.SQLException: The consensus follower is not allowed to to do current operation.
; uncategorized SQLException for SQL []; SQL state [HY000]; error code [3934]; The consensus follower is not allowed to to do current operation.; nested exception is java.sql.SQLException: The consensus follower is not allowed to to do current operation.
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:84)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440)
at com.sun.proxy.$Proxy17.insert(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:271)
at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:62)
at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:152)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:85)
at com.sun.proxy.$Proxy31.insert(Unknown Source)
at org.mybatis.dynamic.sql.util.mybatis3.MyBatis3Utils.insert(MyBatis3Utils.java:93)
at com.aliyun.polardbx.binlog.dao.NodeInfoMapper.insertSelective(NodeInfoMapper.java:212)
at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
at org.apache.ibatis.binding.MapperProxy$DefaultMethodInvoker.invoke(MapperProxy.java:166)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:85)
at com.sun.proxy.$Proxy31.insertSelective(Unknown Source)
at com.aliyun.polardbx.binlog.daemon.schedule.NodeReporter.exec(NodeReporter.java:90)
at com.aliyun.polardbx.binlog.task.AbstractBinlogTimerTask$1.run(AbstractBinlogTimerTask.java:55)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Caused by: java.sql.SQLException: The consensus follower is not allowed to to do current operation.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1915)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1254)
at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tomcat.jdbc.pool.StatementFacade$StatementProxy.invoke(StatementFacade.java:114)
at com.sun.proxy.$Proxy30.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.update(PreparedStatementHandler.java:47)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.update(RoutingStatementHandler.java:74)
at org.apache.ibatis.executor.ReuseExecutor.doUpdate(ReuseExecutor.java:52)
at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:117)
at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:76)
at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:197)
at org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:184)
at sun.reflect.GeneratedMethodAccessor55.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426)
... 16 common frames omitted

java11 中提示少依赖包

polardbx-cdc-backup/src/main/java/com/aliyun/polardbx/binlog/download/RdsApi.java
import javax.xml.bind.DatatypeConverter;
java11 中提示少依赖包

JAXB API是java EE 的API,在java SE 9.0 中不再包含这个 Jar 包
jar包中缺少这一依赖-javax.xml.bind.api

CDC内存不够,Final启动后因内存不够退出,修改polardbx-cdc/config/config.properties里的mem_size=3000无效

There is insufficient memory for the Java Runtime Environment to continue.

Native memory allocation (mmap) failed to map 13421772800 bytes for committing reserved memory.

Possible reasons:

The system is out of physical RAM or swap space

The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap

Possible solutions:

Reduce memory load on the system

Increase physical memory or swap space

Check if swap backing store is full

Decrease Java heap size (-Xmx/-Xms)

Decrease number of Java threads

Decrease Java thread stack sizes (-Xss)

Set larger code cache with -XX:ReservedCodeCacheSize=

This output file may be truncated or incomplete.

Out of Memory Error (os_linux.cpp:2756), pid=126113, tid=0x00007f2e6906d700

JRE version: (8.0_321-b07) (build )

Java VM: Java HotSpot(TM) 64-Bit Server VM (25.321-b07 mixed mode linux-amd64 compressed oops)

Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again

--------------- T H R E A D ---------------

Current thread (0x00007f2e60011000): JavaThread "Unknown thread" [_thread_in_vm, id=126116, stack(0x00007f2e68f6e000,0x00007f2e6906e000)]

Stack: [0x00007f2e68f6e000,0x00007f2e6906e000], sp=0x00007f2e6906c4d0, free space=1017k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0xae0635] VMError::report_and_die()+0x2e5
V [libjvm.so+0x4e2aa7] report_vm_out_of_memory(char const*, int, unsigned long, VMErrorType, char const*)+0x67
V [libjvm.so+0x919ba0] os::pd_commit_memory(char*, unsigned long, unsigned long, bool)+0x100
V [libjvm.so+0x9111bf] os::commit_memory(char*, unsigned long, unsigned long, bool)+0x1f
V [libjvm.so+0xadc88c] VirtualSpace::initialize(ReservedSpace, unsigned long)+0x20c
V [libjvm.so+0x5efe17] CardGeneration::CardGeneration(ReservedSpace, unsigned long, int, GenRemSet*)+0xc7
V [libjvm.so+0x4bf9fe] ConcurrentMarkSweepGeneration::ConcurrentMarkSweepGeneration(ReservedSpace, unsigned long, int, CardTableRS*, bool, FreeBlockDictionary::DictionaryChoice)+0x2e
V [libjvm.so+0x5f11e2] GenerationSpec::init(ReservedSpace, int, GenRemSet*)+0x182
V [libjvm.so+0x5dc2cf] GenCollectedHeap::initialize()+0x20f
V [libjvm.so+0xaa3faa] Universe::initialize_heap()+0x16a
V [libjvm.so+0xaa4293] universe_init()+0x33
V [libjvm.so+0x6350e0] init_globals()+0x50
V [libjvm.so+0xa869f9] Threads::create_vm(JavaVMInitArgs*, bool*)+0x409
V [libjvm.so+0x6dca8f] JNI_CreateJavaVM+0x4f
C [libjli.so+0x7ee4] JavaMain+0x84
C [libpthread.so.0+0x7ea5] start_thread+0xc5

--------------- P R O C E S S ---------------

Java Threads: ( => current thread )

Other Threads:

=>0x00007f2e60011000 (exited) JavaThread "Unknown thread" [_thread_in_vm, id=126116, stack(0x00007f2e68f6e000,0x00007f2e6906e000)]

VM state:not at safepoint (not fully initialized)

VM Mutex/Monitor currently owned by a thread: None

heap address: 0x0000000310000000, size: 19200 MB, Compressed Oops mode: Non-zero based:0x000000030ffff000, Oop shift amount: 3
Narrow klass base: 0x0000000000000000, Narrow klass shift: 0

GC Heap History (0 events):
No events

Deoptimization events (0 events):
No events

Classes redefined (0 events):
No events

Internal exceptions (0 events):
No events

Events (0 events):
No events

Dynamic libraries:
310000000-4a0000000 rw-p 00000000 00:00 0
562462ed8000-562462ed9000 r-xp 00000000 fd:00 67190150 /usr/local/java/bin/java
5624630d8000-5624630d9000 r--p 00000000 fd:00 67190150 /usr/local/java/bin/java
5624630d9000-5624630da000 rw-p 00001000 fd:00 67190150 /usr/local/java/bin/java
562463ee9000-562463f0a000 rw-p 00000000 00:00 0 [heap]
7f2e44000000-7f2e44021000 rw-p 00000000 00:00 0
7f2e44021000-7f2e48000000 ---p 00000000 00:00 0
7f2e49a7f000-7f2e4a6ff000 rw-p 00000000 00:00 0
7f2e4a6ff000-7f2e4bfff000 ---p 00000000 00:00 0
7f2e4bfff000-7f2e4c000000 rw-p 00000000 00:00 0
7f2e4c000000-7f2e4c021000 rw-p 00000000 00:00 0
7f2e4c021000-7f2e50000000 ---p 00000000 00:00 0
7f2e51000000-7f2e51270000 rwxp 00000000 00:00 0
7f2e51270000-7f2e60000000 ---p 00000000 00:00 0
7f2e60000000-7f2e60040000 rw-p 00000000 00:00 0
7f2e60040000-7f2e64000000 ---p 00000000 00:00 0
7f2e65c89000-7f2e66121000 rw-p 00000000 00:00 0
7f2e66121000-7f2e66122000 ---p 00000000 00:00 0
7f2e66122000-7f2e66222000 rw-p 00000000 00:00 0
7f2e66222000-7f2e66223000 ---p 00000000 00:00 0
7f2e66223000-7f2e6632d000 rw-p 00000000 00:00 0
7f2e6632d000-7f2e666e3000 ---p 00000000 00:00 0
7f2e666e3000-7f2e666fe000 r-xp 00000000 fd:00 3616483 /usr/local/java/jre/lib/amd64/libzip.so
7f2e666fe000-7f2e668fd000 ---p 0001b000 fd:00 3616483 /usr/local/java/jre/lib/amd64/libzip.so
7f2e668fd000-7f2e668fe000 r--p 0001a000 fd:00 3616483 /usr/local/java/jre/lib/amd64/libzip.so
7f2e668fe000-7f2e668ff000 rw-p 0001b000 fd:00 3616483 /usr/local/java/jre/lib/amd64/libzip.so
7f2e668ff000-7f2e6690b000 r-xp 00000000 fd:00 949467 /usr/lib64/libnss_files-2.17.so
7f2e6690b000-7f2e66b0a000 ---p 0000c000 fd:00 949467 /usr/lib64/libnss_files-2.17.so
7f2e66b0a000-7f2e66b0b000 r--p 0000b000 fd:00 949467 /usr/lib64/libnss_files-2.17.so
7f2e66b0b000-7f2e66b0c000 rw-p 0000c000 fd:00 949467 /usr/lib64/libnss_files-2.17.so
7f2e66b0c000-7f2e66b12000 rw-p 00000000 00:00 0
7f2e66b12000-7f2e66b3e000 r-xp 00000000 fd:00 3616481 /usr/local/java/jre/lib/amd64/libjava.so
7f2e66b3e000-7f2e66d3e000 ---p 0002c000 fd:00 3616481 /usr/local/java/jre/lib/amd64/libjava.so
7f2e66d3e000-7f2e66d3f000 r--p 0002c000 fd:00 3616481 /usr/local/java/jre/lib/amd64/libjava.so
7f2e66d3f000-7f2e66d41000 rw-p 0002d000 fd:00 3616481 /usr/local/java/jre/lib/amd64/libjava.so
7f2e66d41000-7f2e66d4e000 r-xp 00000000 fd:00 3609083 /usr/local/java/jre/lib/amd64/libverify.so
7f2e66d4e000-7f2e66f4d000 ---p 0000d000 fd:00 3609083 /usr/local/java/jre/lib/amd64/libverify.so
7f2e66f4d000-7f2e66f4f000 r--p 0000c000 fd:00 3609083 /usr/local/java/jre/lib/amd64/libverify.so
7f2e66f4f000-7f2e66f50000 rw-p 0000e000 fd:00 3609083 /usr/local/java/jre/lib/amd64/libverify.so
7f2e66f50000-7f2e66f57000 r-xp 00000000 fd:00 1323448 /usr/lib64/librt-2.17.so
7f2e66f57000-7f2e67156000 ---p 00007000 fd:00 1323448 /usr/lib64/librt-2.17.so
7f2e67156000-7f2e67157000 r--p 00006000 fd:00 1323448 /usr/lib64/librt-2.17.so
7f2e67157000-7f2e67158000 rw-p 00007000 fd:00 1323448 /usr/lib64/librt-2.17.so
7f2e67158000-7f2e67259000 r-xp 00000000 fd:00 556070 /usr/lib64/libm-2.17.so
7f2e67259000-7f2e67458000 ---p 00101000 fd:00 556070 /usr/lib64/libm-2.17.so
7f2e67458000-7f2e67459000 r--p 00100000 fd:00 556070 /usr/lib64/libm-2.17.so
7f2e67459000-7f2e6745a000 rw-p 00101000 fd:00 556070 /usr/lib64/libm-2.17.so
7f2e6745a000-7f2e68152000 r-xp 00000000 fd:00 37055050 /usr/local/java/jre/lib/amd64/server/libjvm.so
7f2e68152000-7f2e68351000 ---p 00cf8000 fd:00 37055050 /usr/local/java/jre/lib/amd64/server/libjvm.so
7f2e68351000-7f2e683e7000 r--p 00cf7000 fd:00 37055050 /usr/local/java/jre/lib/amd64/server/libjvm.so
7f2e683e7000-7f2e68418000 rw-p 00d8d000 fd:00 37055050 /usr/local/java/jre/lib/amd64/server/libjvm.so
7f2e68418000-7f2e68453000 rw-p 00000000 00:00 0
7f2e68453000-7f2e68617000 r-xp 00000000 fd:00 15671 /usr/lib64/libc-2.17.so
7f2e68617000-7f2e68816000 ---p 001c4000 fd:00 15671 /usr/lib64/libc-2.17.so
7f2e68816000-7f2e6881a000 r--p 001c3000 fd:00 15671 /usr/lib64/libc-2.17.so
7f2e6881a000-7f2e6881c000 rw-p 001c7000 fd:00 15671 /usr/lib64/libc-2.17.so
7f2e6881c000-7f2e68821000 rw-p 00000000 00:00 0
7f2e68821000-7f2e68823000 r-xp 00000000 fd:00 524643 /usr/lib64/libdl-2.17.so
7f2e68823000-7f2e68a23000 ---p 00002000 fd:00 524643 /usr/lib64/libdl-2.17.so
7f2e68a23000-7f2e68a24000 r--p 00002000 fd:00 524643 /usr/lib64/libdl-2.17.so
7f2e68a24000-7f2e68a25000 rw-p 00003000 fd:00 524643 /usr/lib64/libdl-2.17.so
7f2e68a25000-7f2e68a3c000 r-xp 00000000 fd:00 73181815 /usr/local/java/lib/amd64/jli/libjli.so
7f2e68a3c000-7f2e68c3b000 ---p 00017000 fd:00 73181815 /usr/local/java/lib/amd64/jli/libjli.so
7f2e68c3b000-7f2e68c3c000 r--p 00016000 fd:00 73181815 /usr/local/java/lib/amd64/jli/libjli.so
7f2e68c3c000-7f2e68c3d000 rw-p 00017000 fd:00 73181815 /usr/local/java/lib/amd64/jli/libjli.so
7f2e68c3d000-7f2e68c54000 r-xp 00000000 fd:00 1323444 /usr/lib64/libpthread-2.17.so
7f2e68c54000-7f2e68e53000 ---p 00017000 fd:00 1323444 /usr/lib64/libpthread-2.17.so
7f2e68e53000-7f2e68e54000 r--p 00016000 fd:00 1323444 /usr/lib64/libpthread-2.17.so
7f2e68e54000-7f2e68e55000 rw-p 00017000 fd:00 1323444 /usr/lib64/libpthread-2.17.so
7f2e68e55000-7f2e68e59000 rw-p 00000000 00:00 0
7f2e68e59000-7f2e68e7b000 r-xp 00000000 fd:00 1323429 /usr/lib64/ld-2.17.so
7f2e68f65000-7f2e68f6d000 rw-s 00000000 fd:00 73176382 /tmp/hsperfdata_polarx/126113
7f2e68f6d000-7f2e68f71000 ---p 00000000 00:00 0
7f2e68f71000-7f2e69072000 rw-p 00000000 00:00 0
7f2e69074000-7f2e69078000 rw-p 00000000 00:00 0
7f2e69078000-7f2e69079000 r--p 00000000 00:00 0
7f2e69079000-7f2e6907a000 rw-p 00000000 00:00 0
7f2e6907a000-7f2e6907b000 r--p 00021000 fd:00 1323429 /usr/lib64/ld-2.17.so
7f2e6907b000-7f2e6907c000 rw-p 00022000 fd:00 1323429 /usr/lib64/ld-2.17.so
7f2e6907c000-7f2e6907d000 rw-p 00000000 00:00 0
7ffc68aab000-7ffc68ad1000 rw-p 00000000 00:00 0 [stack]
7ffc68b28000-7ffc68b2a000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]

VM Arguments:
jvm_args: -Xms19200m -Xmx19200m -Xss1m -DtaskName=Final -Dlogback.configurationFile=/home/polarx/polardbx-cdc/bin/..//conf/logback.xml -XX:PermSize=m -XX:MaxPermSize=m -XX:+UseConcMarkSweepGC -XX:-UseAdaptiveSizePolicy -XX:SurvivorRatio=2 -XX:NewRatio=2 -XX:-OmitStackTraceInFastThrow -XX:CMSInitiatingOccupancyFraction=80 -XX:+UseCMSInitiatingOccupancyOnly -Djava.net.preferIPv4Stack=true -Dmemory=19200 -Djava.util.prefs.systemRoot=/home/polarx/.java -Djava.util.prefs.userRoot=/home/polarx/.java/.userPrefs -Dfile.encoding=UTF-8 -Dcdc.home.dir=/home/polarx/polardbx-cdc/bin/../ -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/polarx/logs -XX:+CrashOnOutOfMemoryError -XX:ErrorFile=/home/polarx/hs_err_pid%p.log
java_command: com.aliyun.polardbx.binlog.TaskBootStrap taskName=Final
java_class_path (initial): /home/polarx/polardbx-cdc/bin/..//conf::/home/polarx/polardbx-cdc/bin/..//lib/activation-1.1.jar:/home/polarx/polardbx-cdc/bin/..//lib/aliyun-java-sdk-core-4.5.10.jar:/home/polarx/polardbx-cdc/bin/..//lib/aliyun-java-sdk-kms-2.11.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/aliyun-java-sdk-ram-3.1.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/aliyun-sdk-oss-3.16.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/annotations-13.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/aviator-5.3.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/aws-java-sdk-core-1.11.655.jar:/home/polarx/polardbx-cdc/bin/..//lib/aws-java-sdk-kms-1.11.655.jar:/home/polarx/polardbx-cdc/bin/..//lib/aws-java-sdk-s3-1.11.655.jar:/home/polarx/polardbx-cdc/bin/..//lib/checker-qual-3.5.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-beanutils-1.9.3.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-codec-1.14.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-collections-3.2.2.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-dbutils-1.7.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-io-2.7.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-lang-2.6.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-lang3-3.8.1.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-logging-1.2.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-math-2.2.jar:/home/polarx/polardbx-cdc/bin/..//lib/commons-text-1.10.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/disruptor-3.4.2.jar:/home/polarx/polardbx-cdc/bin/..//lib/dom4j-1.6.1.jar:/home/polarx/polardbx-cdc/bin/..//lib/druid-1.0.25.2018030201.jar:/home/polarx/polardbx-cdc/bin/..//lib/error_prone_annotations-2.3.4.jar:/home/polarx/polardbx-cdc/bin/..//lib/failureaccess-1.0.1.jar:/home/polarx/polardbx-cdc/bin/..//lib/fastjson-1.2.50_noneautotype.jar:/home/polarx/polardbx-cdc/bin/..//lib/flyway-core-7.3.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/grpc-api-1.30.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/grpc-context-1.30.0.jar:/home/polarx/polardbx-cdc/bin/..//lib/grpc
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME=/usr/local/java
PATH=/usr/local/java/bin:/usr/local/apache-maven-3.6.3/bin:/usr/local/java/bin:/usr/local/java/jre/bin:/usr/local/java/bin:/usr/local/apache-maven-3.6.3/bin:/usr/local/java/bin:/usr/local/java/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
LD_LIBRARY_PATH=/home/polarx/polardbx-cdc/bin/..//lib/native:/home/polarx/polardbx-cdc/bin/..//lib/native:
SHELL=/bin/bash

BASE64Encoder 不支持java11

polardbx-cdc-daemon/src/main/java/com/aliyun/polardbx/binlog/daemon/rest/signature/Signature.java

文件中使用
import sun.misc.BASE64Encoder;
不支持java 11

java 11使用
import java.util.Base64;

5.4.12版本迭代,bugfix修复 & 优化 & 新feature

  1. 修复:日志清理脚本只能清除当前最新日志,无法清除历史日志问题
  2. 修复:针对中文库表名称,因解析乱码导致库表数据被过滤,引发数据丢失问题
  3. 修复:收到ScaleOut/In打标指令后,如果指令前后storge列表并未发生变化,无法触发集群重新调度引发数据链路卡住的问题
  4. 修复:当表名当中含有反引号时,polardbx-meta-cdc模块解析失效,导致触发语法错误,引发数据链路中断
  5. 修复:针对drop database和drop table sql,meta模块未对拓扑信息进行remove,造成内存泄漏或脏数据问题
  6. 优化:针对polardb-x私有ddl sql的处理进行专项优化,remove掉私有语法,提升和mysql生态的兼容性
  7. 优化:支持可动态修改记录到全局Binlog中的心跳事件的频率
  8. 新增:支持集群调度功能可暂停
  9. 新增:支持通过traceid记录server_id,支持实例间双向同步时的循环同步问题
  10. 新增:适配polardb-x instant add column特性,保证当逻辑表和物理表列序不一致时,binlog内容的正确性
  11. 新增:适配新版DN记录TSO的方式(独立的GCN Event记录)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.