fixed format & import

This commit is contained in:
agapple
2017-04-01 22:20:00 +08:00
parent a6604978ed
commit fdd40224d5
18 changed files with 124 additions and 105 deletions

View File

@@ -349,7 +349,9 @@ public class CanalInstanceWithManager extends AbstractCanalInstance {
} else if (indexMode.isMixed()) { } else if (indexMode.isMixed()) {
MemoryLogPositionManager memoryLogPositionManager = new MemoryLogPositionManager(); MemoryLogPositionManager memoryLogPositionManager = new MemoryLogPositionManager();
ZooKeeperLogPositionManager zooKeeperLogPositionManager = new ZooKeeperLogPositionManager(getZkclientx()); ZooKeeperLogPositionManager zooKeeperLogPositionManager = new ZooKeeperLogPositionManager(getZkclientx());
logPositionManager = new PeriodMixedLogPositionManager(memoryLogPositionManager, zooKeeperLogPositionManager, 1000L); logPositionManager = new PeriodMixedLogPositionManager(memoryLogPositionManager,
zooKeeperLogPositionManager,
1000L);
} else if (indexMode.isMeta()) { } else if (indexMode.isMeta()) {
logPositionManager = new MetaLogPositionManager(metaManager); logPositionManager = new MetaLogPositionManager(metaManager);
} else if (indexMode.isMemoryMetaFailback()) { } else if (indexMode.isMemoryMetaFailback()) {

View File

@@ -8,7 +8,6 @@ import java.util.TimerTask;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicLong;
import com.alibaba.otter.canal.parse.index.CanalLogPositionManager;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.exception.ExceptionUtils; import org.apache.commons.lang.exception.ExceptionUtils;
import org.apache.commons.lang.math.RandomUtils; import org.apache.commons.lang.math.RandomUtils;
@@ -23,6 +22,7 @@ import com.alibaba.otter.canal.parse.CanalEventParser;
import com.alibaba.otter.canal.parse.exception.CanalParseException; import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.exception.TableIdNotFoundException; import com.alibaba.otter.canal.parse.exception.TableIdNotFoundException;
import com.alibaba.otter.canal.parse.inbound.EventTransactionBuffer.TransactionFlushCallback; import com.alibaba.otter.canal.parse.inbound.EventTransactionBuffer.TransactionFlushCallback;
import com.alibaba.otter.canal.parse.index.CanalLogPositionManager;
import com.alibaba.otter.canal.parse.support.AuthenticationInfo; import com.alibaba.otter.canal.parse.support.AuthenticationInfo;
import com.alibaba.otter.canal.protocol.CanalEntry; import com.alibaba.otter.canal.protocol.CanalEntry;
import com.alibaba.otter.canal.protocol.CanalEntry.Entry; import com.alibaba.otter.canal.protocol.CanalEntry.Entry;

View File

@@ -2,7 +2,6 @@ package com.alibaba.otter.canal.parse.inbound.mysql;
import java.io.IOException; import java.io.IOException;
import com.alibaba.otter.canal.parse.index.CanalLogPositionManager;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import com.alibaba.otter.canal.parse.CanalEventParser; import com.alibaba.otter.canal.parse.CanalEventParser;
@@ -10,6 +9,7 @@ import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.inbound.ErosaConnection; import com.alibaba.otter.canal.parse.inbound.ErosaConnection;
import com.alibaba.otter.canal.parse.inbound.mysql.dbsync.LogEventConvert; import com.alibaba.otter.canal.parse.inbound.mysql.dbsync.LogEventConvert;
import com.alibaba.otter.canal.parse.inbound.mysql.dbsync.TableMetaCache; import com.alibaba.otter.canal.parse.inbound.mysql.dbsync.TableMetaCache;
import com.alibaba.otter.canal.parse.index.CanalLogPositionManager;
import com.alibaba.otter.canal.parse.support.AuthenticationInfo; import com.alibaba.otter.canal.parse.support.AuthenticationInfo;
import com.alibaba.otter.canal.protocol.position.EntryPosition; import com.alibaba.otter.canal.protocol.position.EntryPosition;
import com.alibaba.otter.canal.protocol.position.LogPosition; import com.alibaba.otter.canal.protocol.position.LogPosition;

View File

@@ -3,8 +3,7 @@ package com.alibaba.otter.canal.parse.index;
import com.alibaba.otter.canal.common.AbstractCanalLifeCycle; import com.alibaba.otter.canal.common.AbstractCanalLifeCycle;
/** /**
* Created by yinxiu on 17/3/17. * Created by yinxiu on 17/3/17. Email: marklin.hz@gmail.com
* Email: marklin.hz@gmail.com
*/ */
public abstract class AbstractLogPositionManager extends AbstractCanalLifeCycle implements CanalLogPositionManager { public abstract class AbstractLogPositionManager extends AbstractCanalLifeCycle implements CanalLogPositionManager {
} }

View File

@@ -5,8 +5,7 @@ import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition; import com.alibaba.otter.canal.protocol.position.LogPosition;
/** /**
* Created by yinxiu on 17/3/17. * Created by yinxiu on 17/3/17. Email: marklin.hz@gmail.com
* Email: marklin.hz@gmail.com
*/ */
public interface CanalLogPositionManager extends CanalLifeCycle { public interface CanalLogPositionManager extends CanalLifeCycle {

View File

@@ -1,14 +1,13 @@
package com.alibaba.otter.canal.parse.index; package com.alibaba.otter.canal.parse.index;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition;
/** /**
* Created by yinxiu on 17/3/18. * Created by yinxiu on 17/3/18. Email: marklin.hz@gmail.com
* Email: marklin.hz@gmail.com
*
* 实现基于failover查找的机制完成meta的操作 * 实现基于failover查找的机制完成meta的操作
* *
* <pre> * <pre>
@@ -74,7 +73,10 @@ public class FailbackLogPositionManager extends AbstractLogPositionManager {
try { try {
primary.persistLogPosition(destination, logPosition); primary.persistLogPosition(destination, logPosition);
} catch (CanalParseException e) { } catch (CanalParseException e) {
logger.warn("persistLogPosition use primary log position manager exception. destination: {}, logPosition: {}", destination, logPosition, e); logger.warn("persistLogPosition use primary log position manager exception. destination: {}, logPosition: {}",
destination,
logPosition,
e);
secondary.persistLogPosition(destination, logPosition); secondary.persistLogPosition(destination, logPosition);
} }
} }

View File

@@ -1,28 +1,32 @@
package com.alibaba.otter.canal.parse.index; package com.alibaba.otter.canal.parse.index;
import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import org.apache.commons.io.FileUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.otter.canal.common.utils.JsonUtils; import com.alibaba.otter.canal.common.utils.JsonUtils;
import com.alibaba.otter.canal.meta.exception.CanalMetaManagerException; import com.alibaba.otter.canal.meta.exception.CanalMetaManagerException;
import com.alibaba.otter.canal.parse.exception.CanalParseException; import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition; import com.alibaba.otter.canal.protocol.position.LogPosition;
import com.google.common.base.Function; import com.google.common.base.Function;
import com.google.common.collect.MigrateMap; import com.google.common.collect.MigrateMap;
import org.apache.commons.io.FileUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.*;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
/** /**
* Created by yinxiu on 17/3/18. * Created by yinxiu on 17/3/18. Email: marklin.hz@gmail.com 基于文件刷新的log
* Email: marklin.hz@gmail.com * position实现
*
* 基于文件刷新的log position实现
* *
* <pre> * <pre>
* 策略: * 策略:
@@ -41,7 +45,8 @@ public class FileMixedLogPositionManager extends AbstractLogPositionManager {
private ScheduledExecutorService executorService; private ScheduledExecutorService executorService;
private final LogPosition nullPosition = new LogPosition(){}; private final LogPosition nullPosition = new LogPosition() {
};
private MemoryLogPositionManager memoryLogPositionManager; private MemoryLogPositionManager memoryLogPositionManager;

View File

@@ -1,15 +1,14 @@
package com.alibaba.otter.canal.parse.index; package com.alibaba.otter.canal.parse.index;
import java.util.Map;
import java.util.Set;
import com.alibaba.otter.canal.parse.exception.CanalParseException; import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition; import com.alibaba.otter.canal.protocol.position.LogPosition;
import com.google.common.collect.MapMaker; import com.google.common.collect.MapMaker;
import java.util.Map;
import java.util.Set;
/** /**
* Created by yinxiu on 17/3/17. * Created by yinxiu on 17/3/17. Email: marklin.hz@gmail.com
* Email: marklin.hz@gmail.com
*/ */
public class MemoryLogPositionManager extends AbstractLogPositionManager { public class MemoryLogPositionManager extends AbstractLogPositionManager {

View File

@@ -1,19 +1,19 @@
package com.alibaba.otter.canal.parse.index; package com.alibaba.otter.canal.parse.index;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.CollectionUtils;
import com.alibaba.otter.canal.meta.CanalMetaManager; import com.alibaba.otter.canal.meta.CanalMetaManager;
import com.alibaba.otter.canal.parse.exception.CanalParseException; import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.ClientIdentity; import com.alibaba.otter.canal.protocol.ClientIdentity;
import com.alibaba.otter.canal.protocol.position.LogPosition; import com.alibaba.otter.canal.protocol.position.LogPosition;
import com.alibaba.otter.canal.store.helper.CanalEventUtils; import com.alibaba.otter.canal.store.helper.CanalEventUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.CollectionUtils;
import java.util.List;
/** /**
* Created by yinxiu on 17/3/18. * Created by yinxiu on 17/3/18. Email: marklin.hz@gmail.com
* Email: marklin.hz@gmail.com
*/ */
public class MetaLogPositionManager extends AbstractLogPositionManager { public class MetaLogPositionManager extends AbstractLogPositionManager {

View File

@@ -1,19 +1,17 @@
package com.alibaba.otter.canal.parse.index; package com.alibaba.otter.canal.parse.index;
import com.alibaba.otter.canal.common.zookeeper.ZkClientx;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.otter.canal.common.zookeeper.ZkClientx;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition;
/** /**
* Created by yinxiu on 17/3/17. * Created by yinxiu on 17/3/17. Email: marklin.hz@gmail.com Memory first.
* Email: marklin.hz@gmail.com
*
* Memory first.
* Asynchronous commit position info to ZK. * Asynchronous commit position info to ZK.
*/ */
public class MixedLogPositionManager extends AbstractLogPositionManager { public class MixedLogPositionManager extends AbstractLogPositionManager {
@@ -71,6 +69,7 @@ public class MixedLogPositionManager extends AbstractLogPositionManager {
public void persistLogPosition(final String destination, final LogPosition logPosition) throws CanalParseException { public void persistLogPosition(final String destination, final LogPosition logPosition) throws CanalParseException {
memoryLogPositionManager.persistLogPosition(destination, logPosition); memoryLogPositionManager.persistLogPosition(destination, logPosition);
executor.submit(new Runnable() { executor.submit(new Runnable() {
public void run() { public void run() {
try { try {
zooKeeperLogPositionManager.persistLogPosition(destination, logPosition); zooKeeperLogPositionManager.persistLogPosition(destination, logPosition);

View File

@@ -1,18 +1,22 @@
package com.alibaba.otter.canal.parse.index; package com.alibaba.otter.canal.parse.index;
import com.alibaba.otter.canal.parse.exception.CanalParseException; import java.util.ArrayList;
import com.alibaba.otter.canal.protocol.position.LogPosition; import java.util.Collections;
import org.slf4j.Logger; import java.util.HashSet;
import org.slf4j.LoggerFactory; import java.util.List;
import java.util.Set;
import java.util.*;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition;
/** /**
* Created by yinxiu on 17/3/18. * Created by yinxiu on 17/3/18. Email: marklin.hz@gmail.com
* Email: marklin.hz@gmail.com
*/ */
public class PeriodMixedLogPositionManager extends AbstractLogPositionManager { public class PeriodMixedLogPositionManager extends AbstractLogPositionManager {
@@ -25,9 +29,11 @@ public class PeriodMixedLogPositionManager extends AbstractLogPositionManager {
private long period; private long period;
private Set<String> persistTasks; private Set<String> persistTasks;
private final LogPosition nullPosition = new LogPosition(){}; private final LogPosition nullPosition = new LogPosition() {
};
public PeriodMixedLogPositionManager(MemoryLogPositionManager memoryLogPositionManager, ZooKeeperLogPositionManager zooKeeperLogPositionManager, long period) { public PeriodMixedLogPositionManager(MemoryLogPositionManager memoryLogPositionManager,
ZooKeeperLogPositionManager zooKeeperLogPositionManager, long period){
if (memoryLogPositionManager == null) { if (memoryLogPositionManager == null) {
throw new NullPointerException("null memoryLogPositionManager"); throw new NullPointerException("null memoryLogPositionManager");
} }

View File

@@ -1,15 +1,15 @@
package com.alibaba.otter.canal.parse.index; package com.alibaba.otter.canal.parse.index;
import org.I0Itec.zkclient.exception.ZkNoNodeException;
import com.alibaba.otter.canal.common.utils.JsonUtils; import com.alibaba.otter.canal.common.utils.JsonUtils;
import com.alibaba.otter.canal.common.zookeeper.ZkClientx; import com.alibaba.otter.canal.common.zookeeper.ZkClientx;
import com.alibaba.otter.canal.common.zookeeper.ZookeeperPathUtils; import com.alibaba.otter.canal.common.zookeeper.ZookeeperPathUtils;
import com.alibaba.otter.canal.parse.exception.CanalParseException; import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.protocol.position.LogPosition; import com.alibaba.otter.canal.protocol.position.LogPosition;
import org.I0Itec.zkclient.exception.ZkNoNodeException;
/** /**
* Created by yinxiu on 17/3/17. * Created by yinxiu on 17/3/17. Email: marklin.hz@gmail.com
* Email: marklin.hz@gmail.com
*/ */
public class ZooKeeperLogPositionManager extends AbstractLogPositionManager { public class ZooKeeperLogPositionManager extends AbstractLogPositionManager {

View File

@@ -2,13 +2,13 @@ package com.alibaba.otter.canal.parse.inbound.group;
import java.net.InetSocketAddress; import java.net.InetSocketAddress;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import org.junit.Test; import org.junit.Test;
import com.alibaba.otter.canal.parse.exception.CanalParseException; import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.inbound.AbstractBinlogParser; import com.alibaba.otter.canal.parse.inbound.AbstractBinlogParser;
import com.alibaba.otter.canal.parse.inbound.BinlogParser; import com.alibaba.otter.canal.parse.inbound.BinlogParser;
import com.alibaba.otter.canal.parse.inbound.mysql.MysqlEventParser; import com.alibaba.otter.canal.parse.inbound.mysql.MysqlEventParser;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import com.alibaba.otter.canal.parse.support.AuthenticationInfo; import com.alibaba.otter.canal.parse.support.AuthenticationInfo;
import com.alibaba.otter.canal.protocol.CanalEntry.Entry; import com.alibaba.otter.canal.protocol.CanalEntry.Entry;
import com.alibaba.otter.canal.protocol.position.EntryPosition; import com.alibaba.otter.canal.protocol.position.EntryPosition;
@@ -71,6 +71,7 @@ public class GroupEventPaserTest {
mysqlEventPaser.setBinlogParser(buildParser(buildAuthentication())); mysqlEventPaser.setBinlogParser(buildParser(buildAuthentication()));
mysqlEventPaser.setEventSink(new EntryEventSink()); mysqlEventPaser.setEventSink(new EntryEventSink());
mysqlEventPaser.setLogPositionManager(new AbstractLogPositionManager() { mysqlEventPaser.setLogPositionManager(new AbstractLogPositionManager() {
@Override @Override
public LogPosition getLatestIndexBy(String destination) { public LogPosition getLatestIndexBy(String destination) {
return null; return null;

View File

@@ -4,11 +4,11 @@ import java.net.InetSocketAddress;
import java.nio.charset.Charset; import java.nio.charset.Charset;
import java.util.List; import java.util.List;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import com.alibaba.otter.canal.parse.stub.AbstractCanalEventSinkTest; import com.alibaba.otter.canal.parse.stub.AbstractCanalEventSinkTest;
import com.alibaba.otter.canal.parse.support.AuthenticationInfo; import com.alibaba.otter.canal.parse.support.AuthenticationInfo;
import com.alibaba.otter.canal.protocol.CanalEntry.Column; import com.alibaba.otter.canal.protocol.CanalEntry.Column;
@@ -82,6 +82,7 @@ public class LocalBinlogDumpTest {
}); });
controller.setLogPositionManager(new AbstractLogPositionManager() { controller.setLogPositionManager(new AbstractLogPositionManager() {
@Override @Override
public LogPosition getLatestIndexBy(String destination) { public LogPosition getLatestIndexBy(String destination) {
return null; return null;

View File

@@ -7,12 +7,12 @@ import java.util.Date;
import java.util.List; import java.util.List;
import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicLong;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import com.alibaba.otter.canal.parse.helper.TimeoutChecker; import com.alibaba.otter.canal.parse.helper.TimeoutChecker;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import com.alibaba.otter.canal.parse.stub.AbstractCanalEventSinkTest; import com.alibaba.otter.canal.parse.stub.AbstractCanalEventSinkTest;
import com.alibaba.otter.canal.parse.support.AuthenticationInfo; import com.alibaba.otter.canal.parse.support.AuthenticationInfo;
import com.alibaba.otter.canal.protocol.CanalEntry.Entry; import com.alibaba.otter.canal.protocol.CanalEntry.Entry;

View File

@@ -4,11 +4,11 @@ import java.net.InetSocketAddress;
import java.nio.charset.Charset; import java.nio.charset.Charset;
import java.util.List; import java.util.List;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import com.alibaba.otter.canal.parse.stub.AbstractCanalEventSinkTest; import com.alibaba.otter.canal.parse.stub.AbstractCanalEventSinkTest;
import com.alibaba.otter.canal.parse.support.AuthenticationInfo; import com.alibaba.otter.canal.parse.support.AuthenticationInfo;
import com.alibaba.otter.canal.protocol.CanalEntry.Column; import com.alibaba.otter.canal.protocol.CanalEntry.Column;
@@ -85,6 +85,7 @@ public class MysqlDumpTest {
}); });
controller.setLogPositionManager(new AbstractLogPositionManager() { controller.setLogPositionManager(new AbstractLogPositionManager() {
@Override @Override
public LogPosition getLatestIndexBy(String destination) { public LogPosition getLatestIndexBy(String destination) {
return null; return null;

View File

@@ -5,12 +5,12 @@ import java.util.Date;
import java.util.List; import java.util.List;
import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicLong;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import com.alibaba.otter.canal.parse.exception.CanalParseException;
import com.alibaba.otter.canal.parse.helper.TimeoutChecker; import com.alibaba.otter.canal.parse.helper.TimeoutChecker;
import com.alibaba.otter.canal.parse.index.AbstractLogPositionManager;
import com.alibaba.otter.canal.parse.stub.AbstractCanalEventSinkTest; import com.alibaba.otter.canal.parse.stub.AbstractCanalEventSinkTest;
import com.alibaba.otter.canal.parse.support.AuthenticationInfo; import com.alibaba.otter.canal.parse.support.AuthenticationInfo;
import com.alibaba.otter.canal.protocol.CanalEntry.Entry; import com.alibaba.otter.canal.protocol.CanalEntry.Entry;
@@ -69,6 +69,7 @@ public class MysqlEventParserTest {
}); });
controller.setLogPositionManager(new AbstractLogPositionManager() { controller.setLogPositionManager(new AbstractLogPositionManager() {
@Override @Override
public LogPosition getLatestIndexBy(String destination) { public LogPosition getLatestIndexBy(String destination) {
return null; return null;

View File

@@ -28,13 +28,17 @@ public class FileMixedLogPositionManagerTest extends AbstractLogPositionManagerT
public void testAll() { public void testAll() {
MemoryLogPositionManager memoryLogPositionManager = new MemoryLogPositionManager(); MemoryLogPositionManager memoryLogPositionManager = new MemoryLogPositionManager();
FileMixedLogPositionManager logPositionManager = new FileMixedLogPositionManager(dataDir, 1000, memoryLogPositionManager); FileMixedLogPositionManager logPositionManager = new FileMixedLogPositionManager(dataDir,
1000,
memoryLogPositionManager);
logPositionManager.start(); logPositionManager.start();
LogPosition position2 = doTest(logPositionManager); LogPosition position2 = doTest(logPositionManager);
sleep(1500); sleep(1500);
FileMixedLogPositionManager logPositionManager2 = new FileMixedLogPositionManager(dataDir, 1000, memoryLogPositionManager); FileMixedLogPositionManager logPositionManager2 = new FileMixedLogPositionManager(dataDir,
1000,
memoryLogPositionManager);
logPositionManager2.start(); logPositionManager2.start();
LogPosition getPosition2 = logPositionManager2.getLatestIndexBy(destination); LogPosition getPosition2 = logPositionManager2.getLatestIndexBy(destination);