Bugfixes...
Fixed status bug and lbrycrdd rpc client not working properly which forced syncing to stop.
This commit is contained in:
parent
4b05a76e28
commit
d2bc8f2220
4 changed files with 33 additions and 14 deletions
|
@ -51,6 +51,7 @@
|
|||
"koa-router": "^7.0.0",
|
||||
"limited-request-queue": "^3.0.4",
|
||||
"ora": "^1.3.0",
|
||||
"prettysize": "^1.1.0",
|
||||
"properties-reader": "^0.0.16",
|
||||
"request": "^2.81.0",
|
||||
"request-promise": "^4.2.1",
|
||||
|
|
|
@ -73,6 +73,19 @@ function getAutoComplete (input) {
|
|||
});
|
||||
}
|
||||
|
||||
function getStatus () {
|
||||
return new Promise((resolve, reject) => {
|
||||
rp(`http://localhost:9200/claims/_stats`)
|
||||
.then(function (data) {
|
||||
data = JSON.parse(data);
|
||||
resolve({status: getStats().info, spaceUsed: pretty(data._all.total.store.size_in_bytes, true), claimsInIndex: data._all.total.indexing.index_total, totSearches: data._all.total.search.query_total});
|
||||
})
|
||||
.catch(function (err) {
|
||||
reject(err);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
class LighthouseControllers {
|
||||
/* eslint-disable no-param-reassign */
|
||||
// Start syncing blocks...
|
||||
|
@ -134,14 +147,7 @@ class LighthouseControllers {
|
|||
* @param {ctx} Koa Context
|
||||
*/
|
||||
async status (ctx) {
|
||||
rp('http://localhost:9200/claims/_stats')
|
||||
.then(function (data) {
|
||||
data = JSON.parse(data);
|
||||
ctx.body = {status: getStats().info, spaceUsed: pretty(data._all.total.store.size_in_bytes, true), claimsInIndex: data._all.total.indexing.index_total, totSearches: data._all.total.search.query_total};
|
||||
})
|
||||
.catch(function (err) {
|
||||
ctx.body = err;
|
||||
});
|
||||
ctx.body = await getStatus();
|
||||
}
|
||||
|
||||
/* eslint-enable no-param-reassign */
|
||||
|
|
|
@ -26,34 +26,40 @@ const eclient = new elasticsearch.Client({
|
|||
},
|
||||
});
|
||||
const queue = new ElasticQueue({elastic: eclient});
|
||||
let client;
|
||||
|
||||
//Get the lbrycrd config from the .lbrycrd folder.
|
||||
fileExists(path.join(os.homedir(), '.lbrycrd/lbrycrd.conf'), (err, exists) => {
|
||||
if (err) { throw err };
|
||||
function getClient () {
|
||||
return new Promise((resolve, reject) => {
|
||||
fileExists(path.join(os.homedir(), '.lbrycrd/lbrycrd.conf'), (err, exists) => {
|
||||
if (err) { reject(err) };
|
||||
let config = {'username': 'lbry', 'password': 'lbry', 'rpc_port': 9245};
|
||||
if (exists) {
|
||||
let prop = PropertiesReader(path.join(os.homedir(), '.lbrycrd/lbrycrd.conf'));
|
||||
config.username = prop.get('rpcuser');
|
||||
config.password = prop.get('rpcpassword');
|
||||
config.rpc_port = prop.get('rpcport');
|
||||
client = new bitcoin.Client({
|
||||
let client = new bitcoin.Client({
|
||||
host : 'localhost',
|
||||
port : config.rpc_port,
|
||||
user : config.username,
|
||||
pass : config.password,
|
||||
timeout: 30000,
|
||||
});
|
||||
resolve(client);
|
||||
} else {
|
||||
client = new bitcoin.Client({
|
||||
let client = new bitcoin.Client({
|
||||
host : 'localhost',
|
||||
port : config.rpc_port,
|
||||
user : config.username,
|
||||
pass : config.password,
|
||||
timeout: 30000,
|
||||
});
|
||||
resolve(client);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
//Check that our cache file exist.
|
||||
fileExists(path.join(appRoot.path, 'claimTrieCache.json'), (err, exists) => {
|
||||
|
@ -67,6 +73,7 @@ let status = {};
|
|||
|
||||
export async function sync () {
|
||||
try {
|
||||
let client = await getClient();
|
||||
status.info = 'gettingClaimTrie';
|
||||
let claimTrie = await client.getClaimsInTrie().then(claimtrie => { return claimtrie }).catch(err => { throw err });
|
||||
let txList = [];
|
||||
|
@ -81,10 +88,11 @@ export async function sync () {
|
|||
latestClaimTrie.push(claimTrie[i].claims[o].claimId);
|
||||
}
|
||||
}
|
||||
status.info = 'calculatingClaimTrie';
|
||||
let oldClaimTrie = await getJSON(path.join(appRoot.path, 'claimTrieCache.json')); // get our old claimTrieCache....
|
||||
let added = await getAddedClaims(oldClaimTrie, latestClaimTrie); // get all new that should be added
|
||||
let removed = await getRemovedClaims(oldClaimTrie, latestClaimTrie); // get all old that should be removed
|
||||
status.info = 'calculatingClaimTrie';
|
||||
status.info = 'updatingIndex';
|
||||
for (let claimId of added) { // for all new get their tx info and add to database
|
||||
let tx = txList.find(x => x.claimId === claimId);
|
||||
if (typeof tx !== 'undefined') {
|
||||
|
|
|
@ -2908,6 +2908,10 @@ preserve@^0.2.0:
|
|||
version "0.2.0"
|
||||
resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
|
||||
|
||||
prettysize@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/prettysize/-/prettysize-1.1.0.tgz#c6c52f87161ff172ea435f375f99831dd9a97bb0"
|
||||
|
||||
private@^0.1.6, private@^0.1.7:
|
||||
version "0.1.7"
|
||||
resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1"
|
||||
|
|
Loading…
Reference in a new issue