Add catch blocks at bootstrap node

This commit is contained in:
Manfred Karrer 2015-05-05 00:17:33 +02:00
parent b168833182
commit 04b41237bb
2 changed files with 26 additions and 9 deletions

View file

@ -60,7 +60,7 @@ public class BootstrapNode {
try { try {
Number160 peerId = Number160.createHash(name); Number160 peerId = Number160.createHash(name);
DefaultEventExecutorGroup eventExecutorGroup = new DefaultEventExecutorGroup(250); DefaultEventExecutorGroup eventExecutorGroup = new DefaultEventExecutorGroup(50);
ChannelClientConfiguration clientConf = PeerBuilder.createDefaultChannelClientConfiguration(); ChannelClientConfiguration clientConf = PeerBuilder.createDefaultChannelClientConfiguration();
clientConf.pipelineFilter(new PeerBuilder.EventExecutorGroupFilter(eventExecutorGroup)); clientConf.pipelineFilter(new PeerBuilder.EventExecutorGroupFilter(eventExecutorGroup));
@ -85,17 +85,29 @@ public class BootstrapNode {
peer.peerBean().peerMap().addPeerMapChangeListener(new PeerMapChangeListener() { peer.peerBean().peerMap().addPeerMapChangeListener(new PeerMapChangeListener() {
@Override @Override
public void peerInserted(PeerAddress peerAddress, boolean verified) { public void peerInserted(PeerAddress peerAddress, boolean verified) {
log.debug("Peer inserted: peerAddress=" + peerAddress + ", verified=" + verified); try {
log.debug("Peer inserted: peerAddress=" + peerAddress + ", verified=" + verified);
} catch (Throwable t) {
log.error("Exception at peerInserted " + t.getMessage());
}
} }
@Override @Override
public void peerRemoved(PeerAddress peerAddress, PeerStatistic peerStatistics) { public void peerRemoved(PeerAddress peerAddress, PeerStatistic peerStatistics) {
log.debug("Peer removed: peerAddress=" + peerAddress + ", peerStatistics=" + peerStatistics); try {
log.debug("Peer removed: peerAddress=" + peerAddress + ", peerStatistics=" + peerStatistics);
} catch (Throwable t) {
log.error("Exception at peerRemoved " + t.getMessage());
}
} }
@Override @Override
public void peerUpdated(PeerAddress peerAddress, PeerStatistic peerStatistics) { public void peerUpdated(PeerAddress peerAddress, PeerStatistic peerStatistics) {
// log.debug("Peer updated: peerAddress=" + peerAddress + ", peerStatistics=" + peerStatistics); try {
//log.debug("Peer updated: peerAddress=" + peerAddress + ", peerStatistics=" + peerStatistics);
} catch (Throwable t) {
log.error("Exception at peerUpdated " + t.getMessage());
}
} }
}); });
@ -104,9 +116,13 @@ public class BootstrapNode {
while (true) { while (true) {
if (peer.peerBean().peerMap().all().size() > 0) { if (peer.peerBean().peerMap().all().size() > 0) {
noPeersInfoPrinted = false; noPeersInfoPrinted = false;
log.info("Number of peers online = " + peer.peerBean().peerMap().all().size()); try {
for (PeerAddress peerAddress : peer.peerBean().peerMap().all()) { log.info("Number of peers online = " + peer.peerBean().peerMap().all().size());
log.info("Peer: " + peerAddress.toString()); for (PeerAddress peerAddress : peer.peerBean().peerMap().all()) {
log.info("Peer: " + peerAddress.toString());
}
} catch (Throwable t) {
log.error("Exception at run loop " + t.getMessage());
} }
} }
else if (noPeersInfoPrinted) { else if (noPeersInfoPrinted) {
@ -122,7 +138,8 @@ public class BootstrapNode {
} }
}).start(); }).start();
} catch (Exception e) { } catch (Throwable t) {
log.error("Fatal exception " + t.getMessage());
if (peer != null) if (peer != null)
peer.shutdown().awaitUninterruptibly(); peer.shutdown().awaitUninterruptibly();
} }

View file

@ -62,7 +62,7 @@ import rx.Observable;
class MainViewModel implements ViewModel { class MainViewModel implements ViewModel {
private static final Logger log = LoggerFactory.getLogger(MainViewModel.class); private static final Logger log = LoggerFactory.getLogger(MainViewModel.class);
private static final long BLOCKCHAIN_SYNC_TIMEOUT = 60000; private static final long BLOCKCHAIN_SYNC_TIMEOUT = 30000;
// BTC network // BTC network
final StringProperty blockchainSyncInfo = new SimpleStringProperty("Initializing"); final StringProperty blockchainSyncInfo = new SimpleStringProperty("Initializing");