From 040ea6bfb4dcadf34c8787e69fc3f3e877a729b3 Mon Sep 17 00:00:00 2001 From: Matias Alejo Garcia Date: Mon, 10 Mar 2014 12:46:48 -0300 Subject: [PATCH] adapt insight-api to work with bitcores soop version --- app/controllers/blocks.js | 2 +- app/controllers/transactions.js | 6 ++---- dev-util/stats | 6 +++++- insight.js | 4 ++-- lib/BlockDb.js | 8 +++----- lib/HistoricSync.js | 5 ++--- lib/PeerSync.js | 2 +- lib/Sync.js | 8 +++----- lib/TransactionDb.js | 6 +++--- util/p2p.js | 2 +- util/sync.js | 2 +- 11 files changed, 24 insertions(+), 27 deletions(-) diff --git a/app/controllers/blocks.js b/app/controllers/blocks.js index def4e359..984fef82 100644 --- a/app/controllers/blocks.js +++ b/app/controllers/blocks.js @@ -5,7 +5,7 @@ */ var common = require('./common'), async = require('async'), - BlockDb = require('../../lib/BlockDb').class(); + BlockDb = require('../../lib/BlockDb'); var bdb = new BlockDb(); diff --git a/app/controllers/transactions.js b/app/controllers/transactions.js index 2f501ead..6179244c 100644 --- a/app/controllers/transactions.js +++ b/app/controllers/transactions.js @@ -8,11 +8,9 @@ var async = require('async'); var common = require('./common'); var Rpc = require('../../lib/Rpc'); -var TransactionDb = require('../../lib/TransactionDb').default(); -var BlockDb = require('../../lib/BlockDb').default(); -var tDb = new TransactionDb(); -var bdb = new BlockDb(); +var tDb = require('../../lib/TransactionDb').default(); +var bdb = require('../../lib/BlockDb').default(); exports.send = function(req, res) { Rpc.sendRawTransaction(req.body.rawtx, function(err, txid) { diff --git a/dev-util/stats b/dev-util/stats index f68bf9e1..142758ff 100644 --- a/dev-util/stats +++ b/dev-util/stats @@ -41,7 +41,7 @@ first 10% => sacando los contenidos adentro de getblock from file de => 4.5s!! => con base58 cpp => 21s - => toda la testnet => 17m + => toda la testnet => 17m !! 10% de blk2 => 50s con base58cpp @@ -54,3 +54,7 @@ first 10% => 15s comentando desde b.getStandardizedObject() => 39s comentando dps b.getStandardizedObject() + +Mon Mar 10 11:59:25 ART 2014 +10% de blk 0 (testnet) + => 37s diff --git a/insight.js b/insight.js index 040df23b..1cb74c08 100644 --- a/insight.js +++ b/insight.js @@ -9,8 +9,8 @@ process.env.NODE_ENV = process.env.NODE_ENV || 'development'; */ var express = require('express'), fs = require('fs'), - PeerSync = require('./lib/PeerSync').class(), - HistoricSync = require('./lib/HistoricSync').class(); + PeerSync = require('./lib/PeerSync'), + HistoricSync = require('./lib/HistoricSync'); //Initializing system variables var config = require('./config/config'); diff --git a/lib/BlockDb.js b/lib/BlockDb.js index e0ef4d12..bab3d53f 100644 --- a/lib/BlockDb.js +++ b/lib/BlockDb.js @@ -1,6 +1,6 @@ 'use strict'; -var imports = require('soop').imports(); -var parent = imports.parent || require('events').EventEmitter; +var imports = require('soop').imports(); +var ThisParent = imports.parent || require('events').EventEmitter; var TIMESTAMP_PREFIX = 'bts-'; // b-ts- => var PREV_PREFIX = 'bpr-'; // b-prev- => var NEXT_PREFIX = 'bne-'; // b-next- => @@ -26,8 +26,7 @@ var BlockDb = function() { BlockDb.super(this, arguments); this.poolMatch = new PoolMatch(); }; - -BlockDb.parent = parent; +BlockDb.parent = ThisParent; BlockDb.prototype.close = function(cb) { db.close(cb); @@ -57,7 +56,6 @@ BlockDb.prototype.add = function(b, cb) { .put(PREV_PREFIX + b.hash, b.previousblockhash) .write(function(err){ if (!err) { - self.emit('new_block', {blockid: b.hash}); } cb(err); }); diff --git a/lib/HistoricSync.js b/lib/HistoricSync.js index 9f732bcf..ef80c239 100644 --- a/lib/HistoricSync.js +++ b/lib/HistoricSync.js @@ -1,14 +1,13 @@ 'use strict'; var imports = require('soop').imports(); - var util = require('util'); var assert = require('assert'); +var async = require('async'); var RpcClient = require('bitcore/RpcClient'); var Script = require('bitcore/Script'); var networks = require('bitcore/networks'); -var async = require('async'); -var config = require('../config/config'); +var config = imports.config || require('../config/config'); var Sync = require('./Sync'); var sockets = require('../app/controllers/socket.js'); var BlockExtractor = require('./BlockExtractor.js'); diff --git a/lib/PeerSync.js b/lib/PeerSync.js index 16678438..50e678f1 100644 --- a/lib/PeerSync.js +++ b/lib/PeerSync.js @@ -12,7 +12,7 @@ function PeerSync(opts) { this.connected = false; this.peerdb = undefined; this.allowReorgs = false; - this.PeerManager = require('bitcore/PeerManager').createClass({ + this.PeerManager = require('soop').load('../node_modules/bitcore/PeerManager',{ network: (config.network === 'testnet' ? networks.testnet : networks.livenet) }); this.peerman = new this.PeerManager(); diff --git a/lib/Sync.js b/lib/Sync.js index 568a6a0f..933d9d7a 100644 --- a/lib/Sync.js +++ b/lib/Sync.js @@ -3,17 +3,15 @@ var imports = require('soop').imports(); var sockets = require('../app/controllers/socket.js'); -var BlockDb = require('./BlockDb').default(); -var TransactionDb = require('./TransactionDb').default(); -var config = require('../config/config'); +var config = imports.config || require('../config/config'); var networks = require('bitcore/networks'); var async = require('async'); function Sync(opts) { this.opts = opts || {}; - this.bDb = new BlockDb(opts); - this.txDb = new TransactionDb(opts); + this.bDb = require('./BlockDb').default(); + this.txDb = require('./TransactionDb').default(); this.txDb.on('tx_for_address', this.handleTxForAddress.bind(this)); this.txDb.on('new_tx', this.handleNewTx.bind(this)); this.bDb.on('new_block', this.handleNewBlock.bind(this)); diff --git a/lib/TransactionDb.js b/lib/TransactionDb.js index dfb4fd91..42d64fcd 100644 --- a/lib/TransactionDb.js +++ b/lib/TransactionDb.js @@ -2,7 +2,7 @@ var imports = require('soop').imports(); -var parent = imports.parent || require('events').EventEmitter; +var ThisParent = imports.parent || require('events').EventEmitter; // blockHash -> txid mapping var IN_BLK_PREFIX = 'txb-'; //txb-- => 1/0 (connected or not) @@ -39,7 +39,7 @@ var encodedData = require('soop').load('bitcore/util/EncodedData',{ base58: base58 }); var versionedData= require('soop').load('bitcore/util/VersionedData',{ - patent: encodedData + parent: encodedData }); var Address = require('soop').load('bitcore/Address',{ parent: versionedData @@ -51,7 +51,7 @@ var TransactionDb = function() { TransactionDb.super(this, arguments); this.network = config.network === 'testnet' ? networks.testnet : networks.livenet; }; -TransactionDb.parent = parent; +TransactionDb.parent = ThisParent; TransactionDb.prototype.close = function(cb) { db.close(cb); diff --git a/util/p2p.js b/util/p2p.js index c7a11b5e..0d1d885b 100755 --- a/util/p2p.js +++ b/util/p2p.js @@ -3,7 +3,7 @@ process.env.NODE_ENV = process.env.NODE_ENV || 'development'; -var PeerSync = require('../lib/PeerSync').class(); +var PeerSync = require('../lib/PeerSync'); var PROGRAM_VERSION = '0.1'; var program = require('commander'); diff --git a/util/sync.js b/util/sync.js index ee29e65a..e3fe31d4 100755 --- a/util/sync.js +++ b/util/sync.js @@ -7,7 +7,7 @@ process.env.NODE_ENV = process.env.NODE_ENV || 'development'; var SYNC_VERSION = '0.1'; var program = require('commander'); -var HistoricSync = require('../lib/HistoricSync').class(); +var HistoricSync = require('../lib/HistoricSync'); var async = require('async'); program