Bible Pay

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - oncoapop

Pages: 1 ... 4 5 6 7 8 9 10 [11] 12
151
Archived Proposals / Re: Consolidation of Sanctuaries
« on: April 11, 2019, 04:58:18 PM »
I wonder if the consolidation can be achieved in an alternative way (as maybe others have suggested in other forums) that is to allow for multiple masternodes on a single host? That would mean allowing each sanc to use a different port. I don’t know if that is worth considering or even technically possible.

152
1) We had synced from 23234 up to about 23336 but with a difficulty of .10 (IE very low).
The wallet will reorganize back to 23234 if it finds a chain with greater total chain work (which is possible since 23234 had a diff of 20.)

(As long as the re-org block is valid).

2) ABN tries to prevent single rich kiddies (IE someone who has 20 servers) from solving an inordinate amount of blocks personally.  It does this by using up their coin-age.  But in testnet this 20 diff could come from a few high powered machines, although more likely 4-5 miners running full speed right up to that block (so you are correct abn might have helped, but in testnet everyone has a lot of coin age also).

2a.  We actually don't have ABN turned on right now :), I disabled it so we can test one feature at a time.  I planned on enabling qt next then abn later, but now we have to figure out this sync problem first.

3.  I am also rolled back to 23234 right now, so you are experiencing the same thing as me (another words the hash I posted is no longer valid).

Ill do some poking around.  We probably need to turn up our miners to more threads to solve the next block.

Ok thank you for that explanation!  We seem to be moving along.

153
Seems that all my sanc are went out of sync and are unable to sync up to that block. Stuck at 23234 when I initially got one sanc to sync with your 3 even after resync.

isn’t the ABN feature supposed to prevent these sorts of attacks? Please help me understand in layperson terms what is happening and how did that bypass ABN?

Thank you.


154
Good job so far. I have a question:

1/3 sancs that I have reports a different health output:

 "votes": 1,
  "required_votes": 3,
  "last_superblock": 14985,
  "next_superblock": 15190,
  "next_superblock_triggered": true,
  "Healthy": true,
  "GSC_Voted_In": false
mastenode outputs
{
  "626a61b0dfa151374bb42f1c432853efacb1742292318f9389c121f51b3310e4": "1"
}

-------------------------
2/3 report this:
  "votes": 5,
  "required_votes": 3,
  "last_superblock": 14985,
  "next_superblock": 15190,
  "next_superblock_triggered": true,
  "Healthy": true,
  "GSC_Voted_In": true

Is that normal behaviour?

155
I think things are OK on the back end, but we might need another field - but first whats your sanc Ip, I can check some things to make sure I see your vote?

Btw, no - you should not have to vote manually, this is all automatic.

Thanks.

bbpd@sanc2:~$ ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 45.62.239.200  netmask 255.255.255.0  broadcast 45.62.239.255
        inet6 fe80::250:56ff:fe95:4682  prefixlen 64  scopeid 0x20<link>
        ether 00:50:56:95:46:82  txqueuelen 1000  (Ethernet)
        RX packets 600708  bytes 190734759 (190.7 MB)
        RX errors 0  dropped 276  overruns 0  frame 0
        TX packets 530771  bytes 225023604 (225.0 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

156
** Update **

So for the last few re-releases the common theme has been:
- No signs of a problem with abn weight, or gsc client side transactions, or creation of the pog points
- No signs of problems with actual POBH heat mining (IE no forks resulting from POW)
- No signs of problems on the *monthly* superblock budget system or its creation of budget data

- Every re-release so far and enhancement resulted from a problem related to the Daily superblock contract
 (not a problem with the actual contract, a problem with the sancs not *finding* the contract, some find it, some lose it)

So I've been trying to hone in on this for the last 2 days - because at first I believed running only 3 sancs meant that one sanc out of 3 was not syncing properly- so we added rules to strengthen the minimum requirements of the voting required for a superblock to pass.  Yesterday however, all 3 sancs could see the votes on the superblock (we had 4), but only 2 of them had the actual gobject in memory (that is obviously a problem).

Let me explain this a different way, so we can all understand how a soft consensus can still fork the chain in testnet.
Sanc #1 and Sanc #2 had the gobject in memory (this is the GSC contract with its payments and addresses).  Sanc 1,2,and 3 had the *vote* for the gobject in memory and they all agreed the superblock was good and should pass.

Here is what happened on block 6990:

Sanc #1 found both the gobject and the trigger votes, and it said:  Valid, accepted
Sanc #2 found the votes only, and said "valid superblock at this height" but actually rejected the block because:  IsBlockValueValid, too few superblock payments <-- this is because it was missing the gobject with the hex data

So lets see what happens; Sanc #2 goes on its own chain now, Sanc 1 and 3 continue on the chain with the higher work.  This actually splits the testnet network because now Sanctuary votes for 1 cause (mnpayments to decrease), IE do to our mnpayments relying on chainheights- this becomes a hard split - and in a small
 testnet network we cant have this, so therefore we have to fix the root of the problem.

This ends up causing a hard fork, because #2 will never re-correct its view of this block until completely resynced as it has now marked the block as a fail.

First, lets stop testing again until I can release a plan to fix this.
(It does not appear to be watchman).
It appears to be more of a timing issue.  In Dash, the gobjects are synced over a longer time span (as we normally have a month to get all the data for the monthly votes), but in our case, we are trying to sync (with 2 minute blocks) all the superblock data within 190 blocks (IE < 3 hours)-- so I can see if one sanc misses a gobject, its going to make a bad call on the next superblock.

So, my plan is this next:
1. I will investigate all code that syncs gobjects, and see if we are lacking something (Ie timing issues) and beef this up
2. I will do something special to allow us to Monitor the next daily gsc superblock, like a command line that will alert us that a node is going to make a bad call on the next block
3. We will make the sanc go out of its way to Pull the data it needs to make a good call on the block manually

Then we regroup here and do an in-depth analysis on the actual superblock heights as they are about to tick by and post something on the forum to see what the state of each one is as they occur. 

Please hang on for the next version, it might take a day, it might take less depending on how complex the timing issue is.

I appear to be on the correct chain by as far as I can tell (checking manually), I have not seen my sanc (the 4th) vote for any superblock. Does this have to be done manually?

bbpd@sanc2:~/Sanctuary$ cli getblockhash 10120
e13331a79a04776297f1ef66634525bb3d16aca8c9ff8d61a5be21f2c5202caf
bbpd@sanc2:~/Sanctuary$ cli exec health
{
  "Command": "health",
  "govobjhash": "9ff38ea222d3bb56085b2c696a10ddf02d16548cdb23beec3db828ae5ed8b929",
  "Amounts": "736194.00|180067.00|173696.00|101790.00|23491.00|37641.00",
  "Addresses": "yR26BVwFeGTnkgdfw1RRNgVF2LyPnrZqaT|yS9YaCFpQuE6xpBrTvUbnPyJgwaXZep8C8|yUNSEjjtC9pdeHp4spswdFWh1npfV5Jvqe|yfqGyVvuyidYytq5o2QvN1VdVeXtH9Lrkt|ygavD5YuAJXpHDMLRyiiJ199YM5y9fTWfB|yiWrpMBA8YXfVmxntAgZZ1dh18ueaBerbW",
  "votes": 2,
  "required_votes": 3,
  "last_superblock": 10680,
  "next_superblock": 10885,
  "next_superblock_triggered": true,
  "Healthy": true,
  "GSC_Voted_In": false
}

157
1.4.0.8-TestNet Mandatory Upgrade

- Add Watchman On the Wall (BiblePay version)
- Modify Sanctuary IsSuperblockValid trigger rule to trigger when
fCachedFunding is set
- Add rpc command 'getpogpoints' (this shows the pog points for a
transaction)

Sorry but I am unable to start watchman. can you please advise?

-342: non-JSON HTTP response with '401 Unauthorized' from server
Cannot connect to biblepayd. Please ensure biblepayd is running and the JSONRPC port is open to watchman.


158
If you send some tBBP, I can set up a sanc, if needed. or else, will just roll in testnet with zero.
yMSnfBPVTqdstm2grmztDxmxqkLdPzJCJG

Thanks!

oh, that's strange, I got block reward without even staking (I have zero in the wallet).

should be on the same chain as I can see your 3 sancs

getblockhash 4297
7b8125733561d649d5a89694dc8e0f7509abae344e7a4da9b5a233911b04bc30

159
So, I don't want to release an official testnet release until this superblock issue is tested, but I will release an alpha tonight for the brave users.

Anyone who feels like jumping in early can upgrade (after I post the release version in about 30 mins), testing is purely to help us reach block 5000.
If everything goes well we can stay on the chain.

NOTE:  It is Extremely important to follow these directions before you upgrade:

cd testnet3
rm blocks -r
rm chainstate -r
rm evodb -r
rm mnc*
rm mnp*
rm gov*
cd ../SAN
rm pra* <-- Extremely important, you must remove the prayers file, as it contains cached campaign data that must be removed for testing to be successful
optional: rm testnet wallet.dat (this will just clean up the txlist and make it a smaller file.)

In this version, we needed to reset the chain again, primarily because of a change I made to DGW for testnet (to clean it up while our engine is on the floor).
So this means we also have to re-create our sancs.

I've recreated 3 new sancs in the cloud this time for more reliability, and we are synced up to block 2266 so far.

Linux users, you can get the latest now if you want, or wait until the alpha test is finished.

Remember we also must recreate our CPK (exec cpk nickname), and (exec join pog).

If you send some tBBP, I can set up a sanc, if needed. or else, will just roll in testnet with zero.
yMSnfBPVTqdstm2grmztDxmxqkLdPzJCJG

Thanks!

160
EDIT:

Ill need to release a mandatory upgrade tomorrow morning to ensure everyone is on the same chain.  We have too many old versions floating around.

Dear Rob,
Thank you for all your hard work that MIP and you and others have put into the development and maintenance. Glad to help and be part of testnet.
Can I make one small suggestion, if I may?  Each time after a Mandatory Update - at least on Testnet where this is so frequent - can you kindly post the latest block and blockhash so that we can all periodically check that we are on the right chain as we may have missed these frequent updates as we were away or something.
That would be greatly appreciated! Thank you.

161
As you upgrade each node, please re-sync.  You could be on your own chain (as this was a mandatory) and it was not released with a cutover height.

Kindly confirm if this is also what you are on. The testnet network is really sparse too. Thank you.

bbpd@testnet:~$ block
4111
bbpd@testnet:~$ cli getblockhash 4111
fe1c896a86d64c3986807a33109a73a51a069c96693f9a99af71c41a9d5452bc

162
Also, someone can test Adding a fake proposal, and once it is in the chain and list, then vote on the proposal.

Proposal appears to be successfully made. If you need me to set up another sanctuary, vote for or else vote against.

163
Interesting, this appears to be the anti-botnet feature you implemented, Rob.

Can you kindly explain what is happening? It appears that I staked BBP to mine a block?
So in this example, I staked 30,953 BBP to mine a 10,300 BBP block?

{
    "account": "",
    "address": "ybEzAPVjwGqqDVKHsJZUoDG82jpiGPcKMg",
    "category": "immature",
    "amount": 10299.50936000,
    "vout": 0,
    "confirmations": 1,
    "instantlock": false,
    "generated": true,
    "blockhash": "0dbfcd1587816e0516b8928ca53ca022ce95261be90c3b8a6f65bc3908a9cdf9",
    "blockindex": 0,
    "blocktime": 1553749516,
    "txid": "e69ed826877f71811361a12aef4702f9b3a2ad915caf8caef7c62e9779ffe5d3",
    "walletconflicts": [
    ],
    "time": 1553749516,
    "timereceived": 1553749532
  },
  {
    "account": "CHRISTIAN-PUBLIC-KEY",
    "address": "yMjm7qwu2pQ3xRwtxu6qcGrdzdtCTPgcU4",
    "category": "receive",
    "amount": 30953.52702350,
    "label": "CHRISTIAN-PUBLIC-KEY",
    "vout": 0,
    "confirmations": 1,
    "instantlock": false,
    "Anti-BotNet-Transaction": true,
    "blockhash": "0dbfcd1587816e0516b8928ca53ca022ce95261be90c3b8a6f65bc3908a9cdf9",
    "blockindex": 2,
    "blocktime": 1553749516,
    "txid": "9a5ce7d79cf10d36c232e73fe480b26dc2b69132b50955519eb13ea92fb90679",
    "walletconflicts": [
    ],
    "time": 1553749516,
    "timereceived": 1553749532
  },
  {
    "account": "",
    "address": "yMjm7qwu2pQ3xRwtxu6qcGrdzdtCTPgcU4",
    "category": "send",
    "amount": -30953.52702350,
    "label": "CHRISTIAN-PUBLIC-KEY",
    "vout": 0,
    "fee": -0.00500000,
    "confirmations": 1,
    "instantlock": false,
    "Anti-BotNet-Transaction": true,
    "blockhash": "0dbfcd1587816e0516b8928ca53ca022ce95261be90c3b8a6f65bc3908a9cdf9",
    "blockindex": 2,
    "blocktime": 1553749516,
    "txid": "9a5ce7d79cf10d36c232e73fe480b26dc2b69132b50955519eb13ea92fb90679",
    "walletconflicts": [
    ],
    "time": 1553749516,
    "timereceived": 1553749532,
    "abandoned": false
  }
]

164
It may be annoying but posting the link is helpful if you don't mind :)


Can use the following script, given the frequency of performing upgrades in testnet environment.

#!/bin/bash

cd ~/biblepay-evolution
git pull origin master
cd src
make

165
Ok, I just realized you were testing this from the Pool.

(You dont have to test the pool, as I know that part works - although yes we should test Evo against the pool a little later for sanity sake but I dont have the pool daemon pointed to Evo yet).

But yeah I would like to test Adding a proposal through the QT wallet, and voting on a proposal.

(I added a couple to the qt wallet and was able to vote on them but more eyes are better).

Sorry, was not familiar with that procedure. Thank you for clarifying. I fired up the biblepay-qt on the VPS using X-windows (didn't know I could do it! so glad I tried - learnt something new!).

I also voted for the first and against the second proposal using the GUI and made a third proposal:

Successfully Prepared Proposal 2aa3b879374e76c41da4ce90371a61250dea8aa56207bb60ff225fd05b08b520.   NOTE: You must wait 6 confirms for the proposal to be submitted.  Please check back on this page periodically to ensure a successful transmission and that no error message is listed in the bottom area of the page.  Thank you for using the BiblePay Governance System.


Pages: 1 ... 4 5 6 7 8 9 10 [11] 12