|
@@ -166,9 +166,16 @@ public class TableMetaCache {
|
|
if (tableMeta == null) {
|
|
if (tableMeta == null) {
|
|
// 因为条件变化,可能第一次的tableMeta没取到,需要从db获取一次,并记录到snapshot中
|
|
// 因为条件变化,可能第一次的tableMeta没取到,需要从db获取一次,并记录到snapshot中
|
|
String fullName = getFullName(schema, table);
|
|
String fullName = getFullName(schema, table);
|
|
|
|
+ ResultSetPacket packet = null;
|
|
|
|
+ String createDDL = null;
|
|
try {
|
|
try {
|
|
- ResultSetPacket packet = connection.query("show create table " + fullName);
|
|
|
|
- String createDDL = null;
|
|
|
|
|
|
+ try {
|
|
|
|
+ packet = connection.query("show create table " + fullName);
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ // 尝试做一次retry操作
|
|
|
|
+ connection.reconnect();
|
|
|
|
+ packet = connection.query("show create table " + fullName);
|
|
|
|
+ }
|
|
if (packet.getFieldValues().size() > 0) {
|
|
if (packet.getFieldValues().size() > 0) {
|
|
createDDL = packet.getFieldValues().get(1);
|
|
createDDL = packet.getFieldValues().get(1);
|
|
}
|
|
}
|