Author Topic: 50 PTS Bounty - Fix PTS Synchronization Time Issues [PAID]  (Read 25339 times)

0 Members and 1 Guest are viewing this topic.

Offline zvs

  • Full Member
  • ***
  • Posts: 193
    • View Profile

this is ridiculous, there never was an issue to begin with

while you're bust distributing money to people that have done absolutely nothing, i've been running a dedicated node for a month

    "version" : 80600,
    "protocolversion" : 70001,
    "walletversion" : 60000,
    "balance" : 0.00000000,
    "blocks" : 36221,
    "timeoffset" : -1,
    "connections" : 375,
    "proxy" : "",
    "difficulty" : 0.01203577,
    "testnet" : false,
    "keypoololdest" : 1384922232,
    "keypoolsize" : 6,
    "paytxfee" : 0.01000000,
    "errors" : ""

the solution was obvious, fix the seed node list

i have noticed i've been getting more connections lately.  i'd hate to be a source of free money for someone that's done two things:  jack and shit.  so if i find that it's on a new seed node list, i'll take it down

First of all there is an issue that I have observed.  The fix requires providing a new binary with free trades churn arg.  As I do not have time nor a windows machine to produce the binaries and our other devs are busy it is easily worth $1000 to save our time. 

Sent from my iPhone using Tapatalk

I'd like to point out that I feel this is not in the spirit of the bounty, the bounty is for a fix for synchronization time. That i completed on my second try. FreeTrade then mentioned that he has a util "churn" and you asked that it be added, which i did, but that was already past the "fix". You did not mention the need for windows or osx in the OP. All further work such as providing binaries and other patches is separate and was done on request, it is up to you whether you wish to pay for it but i feel the terms of this bounty have been met.

In response to ZVS, the difference between you having a permanent seed node, and my Hard-coding them into the client is that my fix affects everyone, it meets the requirement. Instead of having to either browse through threads for addnodes or waiting for the client to discover on it's own, it will just start by connecting to an always on node, which greatly shortens the time required to sync.

As for windows build, it is not part of the bounty but i will try to get the dependencies nw that i have a windows machine and try my hand at it. Which version of boost is necessary by the way?

As part of the fix, i think i may as well include a checkpoint since I don't think we need daily builds. Osx is another thing altogether, toast, can you try it out?

It probably wouldn't be hard to copy it out of bitcoin's code, right?  lol.

bitcoin-seeder updated regularly & peer receiving this information via DNS request, http://luke.dashjr.org/programs/bitcoin/files/charts/seeds.txt

the current seed nodes provided are either down or full.  that is why people have problems.

besides that, a tip:  in main.cpp,  the timeout delays in "Inactivity Checking" are way too long
« Last Edit: December 29, 2013, 02:24:04 pm by zvs »
Pls to join Primedice 3 and frolic about merrily whilst gambling awe-inspiring quantities of bitcoins. The power of Christ compels you.

I have a dogecoin p2pool at Nogleg.

Offline barwizi

  • Hero Member
  • *****
  • Posts: 764
  • Noirbits, NoirShares, NoirEx.....lol, noir anyone?
    • View Profile
    • Noirbitstalk.org
Quote
Provide a working solution that allows someone to download a PTS wallet and get connected to the network in less than 5 minutes.

Show me where I can download a PTS wallet and get connected that quickly?   I see the code, but the job is only half done.

That's not really applicable here, you are the dev, as a result it falls to you to provide for your windows users. Keep in mind the risks involved with just anyone building it. Do it yourself, risking malware, wallet stealers and other risks involved is not worth it.

BTW, i tried to build it, but the dependencies listed in the build-msw.md are incorrect and incomplete for building on windows. 
--Bar--  PiNEJGUv4AZVZkLuF6hV4xwbYTRp5etWWJ

The magical land of crypto, no freebies people.

Offline bytemaster

Quote
Provide a working solution that allows someone to download a PTS wallet and get connected to the network in less than 5 minutes.

Show me where I can download a PTS wallet and get connected that quickly?   I see the code, but the job is only half done.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline bytemaster

Quote
This bounty is still in the pending state until the full specification for this bounty can be defined.  If you would like to tackle this bounty help us define the SPEC and requirements first.

We are working to clarify the bounty process, but experience has taught me that there must be two-way communication before there can be a full meeting of the minds.  I started the process, but I do not consider this bounty won until someone can download a Windows-Qt binary and have it connect from a fresh PC within a couple of minutes. 

We discussed the requirements in the thread.  I know as a fact that simply having a seed node without churn will not solve this problem, I already have a seed node with a hack to implement churn.   Recognizing that having additional/redundant seed nodes is also part of the process I spawned of separate bounties for that which means that simply updating the nodes listed is not enough.  I need a working binary built by a trusted source combined with the commit.

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline toast

  • Hero Member
  • *****
  • Posts: 4001
    • View Profile
  • BitShares: nikolai

...

First of all there is an issue that I have observed.  The fix requires providing a new binary with free trades churn arg.  As I do not have time nor a windows machine to produce the binaries and our other devs are busy it is easily worth $1000 to save our time. 

Sent from my iPhone using Tapatalk

I'd like to point out that I feel this is not in the spirit of the bounty, the bounty is for a fix for synchronization time. That i completed on my second try. FreeTrade then mentioned that he has a util "churn" and you asked that it be added, which i did, but that was already past the "fix" as you did not mention the need for windows or osx in the OP. All further work such as providing binaries and other patches is separate and was done on request, it is up to you whether you wish to pay for it but i feel the terms of this bounty have been met.

Totally agree, most of the work we did was for stuff tacked on as the thread evolved.

Quote
As for windows build, it is not part of the bounty but i will try to get the dependencies nw that i have a windows machine and try my hand at it. Which version of boost is necessary by the way?

Check out doc/build-msw.md
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline barwizi

  • Hero Member
  • *****
  • Posts: 764
  • Noirbits, NoirShares, NoirEx.....lol, noir anyone?
    • View Profile
    • Noirbitstalk.org

this is ridiculous, there never was an issue to begin with

while you're bust distributing money to people that have done absolutely nothing, i've been running a dedicated node for a month

    "version" : 80600,
    "protocolversion" : 70001,
    "walletversion" : 60000,
    "balance" : 0.00000000,
    "blocks" : 36221,
    "timeoffset" : -1,
    "connections" : 375,
    "proxy" : "",
    "difficulty" : 0.01203577,
    "testnet" : false,
    "keypoololdest" : 1384922232,
    "keypoolsize" : 6,
    "paytxfee" : 0.01000000,
    "errors" : ""

the solution was obvious, fix the seed node list

i have noticed i've been getting more connections lately.  i'd hate to be a source of free money for someone that's done two things:  jack and shit.  so if i find that it's on a new seed node list, i'll take it down

First of all there is an issue that I have observed.  The fix requires providing a new binary with free trades churn arg.  As I do not have time nor a windows machine to produce the binaries and our other devs are busy it is easily worth $1000 to save our time. 

Sent from my iPhone using Tapatalk

I'd like to point out that I feel this is not in the spirit of the bounty, the bounty is for a fix for synchronization time. That i completed on my second try. FreeTrade then mentioned that he has a util "churn" and you asked that it be added, which i did, but that was already past the "fix". You did not mention the need for windows or osx in the OP. All further work such as providing binaries and other patches is separate and was done on request, it is up to you whether you wish to pay for it but i feel the terms of this bounty have been met.

In response to ZVS, the difference between you having a permanent seed node, and my Hard-coding them into the client is that my fix affects everyone, it meets the requirement. Instead of having to either browse through threads for addnodes or waiting for the client to discover on it's own, it will just start by connecting to an always on node, which greatly shortens the time required to sync.

As for windows build, it is not part of the bounty but i will try to get the dependencies nw that i have a windows machine and try my hand at it. Which version of boost is necessary by the way?

As part of the fix, i think i may as well include a checkpoint since I don't think we need daily builds. Osx is another thing altogether, toast, can you try it out?
« Last Edit: December 29, 2013, 06:15:20 am by barwizi »
--Bar--  PiNEJGUv4AZVZkLuF6hV4xwbYTRp5etWWJ

The magical land of crypto, no freebies people.

Offline toast

  • Hero Member
  • *****
  • Posts: 4001
    • View Profile
  • BitShares: nikolai
ZVS, do you have a windows machine?

If you build the new source on a windows machine you can get in on this bounty. Yes, the original issue was just that their seed nodes list was bad but since then we've made a few other improvements too. Also, in this thread we've had bytemaster confirm that he'll reimburse up to $10 a month for people who run seed nodes, up to 4 total nodes on distinct providers.

https://github.com/nmushegian/ProtoShares/tree/psforkinit
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline bytemaster


this is ridiculous, there never was an issue to begin with

while you're bust distributing money to people that have done absolutely nothing, i've been running a dedicated node for a month

    "version" : 80600,
    "protocolversion" : 70001,
    "walletversion" : 60000,
    "balance" : 0.00000000,
    "blocks" : 36221,
    "timeoffset" : -1,
    "connections" : 375,
    "proxy" : "",
    "difficulty" : 0.01203577,
    "testnet" : false,
    "keypoololdest" : 1384922232,
    "keypoolsize" : 6,
    "paytxfee" : 0.01000000,
    "errors" : ""

the solution was obvious, fix the seed node list

i have noticed i've been getting more connections lately.  i'd hate to be a source of free money for someone that's done two things:  jack and shit.  so if i find that it's on a new seed node list, i'll take it down

First of all there is an issue that I have observed.  The fix requires providing a new binary with free trades churn arg.  As I do not have time nor a windows machine to produce the binaries and our other devs are busy it is easily worth $1000 to save our time. 







Sent from my iPhone using Tapatalk
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline zvs

  • Full Member
  • ***
  • Posts: 193
    • View Profile
this is ridiculous, there never was an issue to begin with

while you're bust distributing money to people that have done absolutely nothing, i've been running a dedicated node for a month

    "version" : 80600,
    "protocolversion" : 70001,
    "walletversion" : 60000,
    "balance" : 0.00000000,
    "blocks" : 36221,
    "timeoffset" : -1,
    "connections" : 375,
    "proxy" : "",
    "difficulty" : 0.01203577,
    "testnet" : false,
    "keypoololdest" : 1384922232,
    "keypoolsize" : 6,
    "paytxfee" : 0.01000000,
    "errors" : ""

the solution was obvious, fix the seed node list

i have noticed i've been getting more connections lately.  i'd hate to be a source of free money for someone that's done two things:  jack and shit.  so if i find that it's on a new seed node list, i'll take it down
Pls to join Primedice 3 and frolic about merrily whilst gambling awe-inspiring quantities of bitcoins. The power of Christ compels you.

I have a dogecoin p2pool at Nogleg.

Offline FreeTrade

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 700
    • View Profile
Is my churn usage understanding correct? I'm changing your script to use the new flag:
Code: [Select]
sudo apt-get update && sudo apt-get install git make g++ build-essential libminiupnpc-dev libboost-all-dev libdb++-dev libgmp-dev libssl-dev dos2unix
git clone https://github.com/InvictusInnovations/ProtoShares
cd Protoshares/src
make -f makefile.unix
echo "rpcuser=[youruser]" >> /root/.protoshares/protoshares.conf
echo "rpcpassword=[yourpass]" >> /root/.protoshares/protoshares.conf
./bitcoind -daemon -churn
./bitcoind setgenerate true 3

I think so - check your log to ensure that you're getting notices of disconnections due to churn.

Also you might want to play around with the default numbers. For the MC network, I chose the default number of outgoing connections to be 4 - you might want to stick with 8. I think I set the number of outgoing connections for a churn node to be 50, but you might want more if you have a bigger network.
“People should be more sophisticated? How are you gonna get that done?” - Jerry Seinfeld reply to Bill Maher

Offline toast

  • Hero Member
  • *****
  • Posts: 4001
    • View Profile
  • BitShares: nikolai
So what else do we have to do to claim this? The pull request is ready and has been tested on ubuntu.
There are build errors on OSX, but they are totally unrelated to our changes. Is this expected? Error below.
I don't have a way to test on windows.


Code: [Select]
/Users/nikolai/ProtoShares/src/serialize.h:911:10: error: class member cannot be redeclared
    void insert(iterator it, std::vector<char>::const_iterator first, std::vector<char>::const_iterator last)
         ^
/Users/nikolai/ProtoShares/src/serialize.h:898:10: note: previous declaration is here
    void insert(iterator it, const_iterator first, const_iterator last)
         ^
/Users/nikolai/ProtoShares/src/serialize.h:911:10: error: redefinition of 'insert'
    void insert(iterator it, std::vector<char>::const_iterator first, std::vector<char>::const_iterator last)
         ^
/Users/nikolai/ProtoShares/src/serialize.h:898:10: note: previous definition is here
    void insert(iterator it, const_iterator first, const_iterator last)
         ^
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline bytemaster

Would like bytemaster to comment:

Can we make hosting nodes a separate bounty? Maybe like, 2 PTS plus the cost of hosting, for the first 4 people who use a new provider (I did the first one with DO). That way the seed nodes aren't all controlled by one person, and people who already have accounts on other hosting services can set it up. We already have the setup script and everything. We could hard-code the IPs later once they are set up, there is already enough to have new nodes connect successfully.

If we do that, I think 50 PTS is still fair, even though we did more than was strictly necessary to satisfy the initial requirements. I say a token 2 PTS to freetrade for his suggestion, then 20 to me and 28 to barwizi.

Agreed.  I will start a new bounty for that, with a maximum hosting cost of $10 per month because many people are probably already running servers that are not at full capacity and adding an extra service is not costing them anything extra.

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline toast

  • Hero Member
  • *****
  • Posts: 4001
    • View Profile
  • BitShares: nikolai
Would like bytemaster to comment:

Can we make hosting nodes a separate bounty? Maybe like, 2 PTS plus the cost of hosting, for the first 4 people who use a new provider (I did the first one with DO). That way the seed nodes aren't all controlled by one person, and people who already have accounts on other hosting services can set it up. We already have the setup script and everything. We could hard-code the IPs later once they are set up, there is already enough to have new nodes connect successfully.

If we do that, I think 50 PTS is still fair, even though we did more than was strictly necessary to satisfy the initial requirements. I say a token 2 PTS to freetrade for his suggestion, then 20 to me and 28 to barwizi.
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline barwizi

  • Hero Member
  • *****
  • Posts: 764
  • Noirbits, NoirShares, NoirEx.....lol, noir anyone?
    • View Profile
    • Noirbitstalk.org
oh, you already got around it, cool. churn, is Freetrade's item, he'd know best.

--Bar--  PiNEJGUv4AZVZkLuF6hV4xwbYTRp5etWWJ

The magical land of crypto, no freebies people.

Offline barwizi

  • Hero Member
  • *****
  • Posts: 764
  • Noirbits, NoirShares, NoirEx.....lol, noir anyone?
    • View Profile
    • Noirbitstalk.org
it did compile on mine, strange. oh, i know why it gave you that error, net.h was missing from the files i uploaded. follow the link again, it should be there.
--Bar--  PiNEJGUv4AZVZkLuF6hV4xwbYTRp5etWWJ

The magical land of crypto, no freebies people.