Pages:
Author

Topic: [ANN][YAC] YACoin ongoing development - page 83. (Read 380091 times)

hero member
Activity: 802
Merit: 1003
GCVMMWH
March 19, 2014, 12:45:13 PM
OK, I added the stake function to testing. I tested it over the past few days and everything looks good. Test it out if you can (you'll need to build), and if no problems, I will release it (including a windows build) soon.

https://github.com/yacoin/yacoin/commit/eb8c27f5a8caa0a21618d00d5f63fecfa1d782e8

Has anyone been able to try this out? Are you all waiting for a compiled version? I've already minted a few blocks  Cool
hero member
Activity: 516
Merit: 500
CAT.EX Exchange
March 18, 2014, 07:34:00 PM

it's just rescanning the whole blockchain to add all transactions associated with that address to your new wallet. you can import you private keys in bulk faster like this:



Thanks. I was suspect that it was doing something like that. I have done the same with XPM and PPC wallets and they always finish in a matter of seconds. So is it a YAC wallet specific thing that I am seeing?

Code:
importprivkey THEPRIVATEKEY '' false
I just tried the command.  The wallet doesn't support the third ( 'false') option...
sr. member
Activity: 406
Merit: 250
One does not simply mine Bitcoins
March 18, 2014, 01:06:57 PM
My wallet v0.4.2 runs on 32bit win 7. If I imported a private key to the wallet and the console stops executing any commands.
What I did is this:
run wallet;
dumpprivkey of an address, save the private key;
quit wallet;
rename wallet.dat to wallet1.dat;
restart wallet and generate a new empty wallet;
wait for wallet to sync;
importprivkey;
[wallet stops executing any commands e.g. getinfo]

I can see the wallet using 20% of CPU time, non-stop. It seems that the wallet couldn't finish importing the priv key.
Can anyone confirm this?
it's just rescanning the whole blockchain to add all transactions associated with that address to your new wallet. you can import you private keys in bulk faster like this:
Code:
importprivkey THEPRIVATEKEY '' false
the empty single quotes are the account label to add them to (default being the nameless account) while the false option tells bitcoind not to rescan the blockchain.
after you finish importing your private keys, shut down the node and start it up with "-rescan" commandline argument (this will launch the blockchain rescan of all blocks for missing wallet transactions)

if your're importing just one private key, then this won't help you much as you still need the whole rescan.
hero member
Activity: 516
Merit: 500
CAT.EX Exchange
March 18, 2014, 12:20:43 PM
My wallet v0.4.2 runs on 32bit win 7. If I imported a private key to the wallet and the console stops executing any commands.
What I did is this:
run wallet;
dumpprivkey of an address, save the private key;
quit wallet;
rename wallet.dat to wallet1.dat;
restart wallet and generate a new empty wallet;
wait for wallet to sync;
importprivkey;
[wallet stops executing any commands e.g. getinfo]

I can see the wallet using 20% of CPU time, non-stop. It seems that the wallet couldn't finish importing the priv key.
Can anyone confirm this?
legendary
Activity: 1918
Merit: 1012
★Nitrogensports.eu★
March 18, 2014, 11:55:00 AM
I wrote a How-To for determining how many coins in your wallet are being mined for POS interest.
I show how to use Coin Control get your total number of coins being minded by the YACoin client.

You can find the How-To here:
http://yacointalk.grokonet.com:8090/t/calculate-your-staked-coins-with-coin-control/41

I am not familiar with YAC POS calculation. I see this line here
Quote
Each chunk of eligible coins has it's interest calculated based on the chunk's age in the range between 30 and 90 days.

Does it mean for POS generation if I have 100 YACs in the wallet for 1000 days I can only expect 100 * 90* 5% / 365 reward if a POS block is found? In PPC POS calculation the probability of finding a POS block is based on coin age capped by 90 days but the reward value itself is not capped. In the above example I would expect 100 * (1000 - 30) * 1% / 365 reward.
I think you are right. I will update the post.

Groko - that is a great post on yacointalk.  I've been mining YAC since the launch, and I learned a few things from your overview.  Thanks!  Smiley

And I believe mhps is right - I think YAC caps POS at 90 days.  So a 100 YAC transaction at 1000 days would produce the same interest as at 90 days (100 * 90 / 365 * 0.05 YAC = 24.65 coin years * 0.05 YAC => 24 years * 0.05 = 1.20 YAC gained). 

Again the guide is very well written, but it maybe helpful to add an example, or two, of how the 5% interest is calculated.  Things like the coin-year rounding down to the nearest whole year weren't initiative to me when I originally started.  From the example above, I would have expected 1.23 YAC instead of 1.20 - it boggled my mind why all POS were 'rounded' to the lowest 0.05.  I figure if we can save someone an hour of sifting through the forums, it will benefit the community. Smiley
newbie
Activity: 25
Merit: 0
March 16, 2014, 07:49:13 AM
I wrote a How-To for determining how many coins in your wallet are being mined for POS interest.
I show how to use Coin Control get your total number of coins being minded by the YACoin client.

You can find the How-To here:
http://yacointalk.grokonet.com:8090/t/calculate-your-staked-coins-with-coin-control/41

I am not familiar with YAC POS calculation. I see this line here
Quote
Each chunk of eligible coins has it's interest calculated based on the chunk's age in the range between 30 and 90 days.

Does it mean for POS generation if I have 100 YACs in the wallet for 1000 days I can only expect 100 * 90* 5% / 365 reward if a POS block is found? In PPC POS calculation the probability of finding a POS block is based on coin age capped by 90 days but the reward value itself is not capped. In the above example I would expect 100 * (1000 - 30) * 1% / 365 reward.
I think you are right. I will update the post.
sr. member
Activity: 288
Merit: 260
March 15, 2014, 10:53:16 AM
if someone is still interested in my case Smiley....the coins arrived at last.
it's good news! Congrats!!

i opened the third ticket, and i was a little bit rude and sarcastic, maybe that helped, but,
agent Leah, again excalated ticket to tier 2agent, Mullick.
He said that these problematic transactions have gotten stuck in their wallet due to being to large to fit into a block (too many inputs).
he resent them and now, after two months, YACs are my wallet.
I've got only promises from Mullick 24 days ago but nothing in my wallet..
I will open another ticket!
hero member
Activity: 516
Merit: 500
CAT.EX Exchange
March 15, 2014, 10:21:22 AM
I wrote a How-To for determining how many coins in your wallet are being mined for POS interest.
I show how to use Coin Control get your total number of coins being minded by the YACoin client.

You can find the How-To here:
http://yacointalk.grokonet.com:8090/t/calculate-your-staked-coins-with-coin-control/41

I am not familiar with YAC POS calculation. I see this line here
Quote
Each chunk of eligible coins has it's interest calculated based on the chunk's age in the range between 30 and 90 days.

Does it mean for POS generation if I have 100 YACs in the wallet for 1000 days I can only expect 100 * 90* 5% / 365 reward if a POS block is found? In PPC POS calculation the probability of finding a POS block is based on coin age capped by 90 days but the reward value itself is not capped. In the above example I would expect 100 * (1000 - 30) * 1% / 365 reward.
newbie
Activity: 7
Merit: 0
March 15, 2014, 03:10:45 AM
if someone is still interested in my case Smiley....the coins arrived at last.

i opened the third ticket, and i was a little bit rude and sarcastic, maybe that helped, but,
agent Leah, again excalated ticket to tier 2agent, Mullick.
He said that these problematic transactions have gotten stuck in their wallet due to being to large to fit into a block (too many inputs).
he resent them and now, after two months, YACs are my wallet.
hero member
Activity: 802
Merit: 1003
GCVMMWH
March 14, 2014, 10:18:30 PM
OK, I added the stake function to testing. I tested it over the past few days and everything looks good. Test it out if you can (you'll need to build), and if no problems, I will release it (including a windows build) soon.

https://github.com/yacoin/yacoin/commit/eb8c27f5a8caa0a21618d00d5f63fecfa1d782e8
newbie
Activity: 25
Merit: 0
March 12, 2014, 10:57:55 AM
Quote

I made a lot of progress on the stake function for Qt today.  I can see why no one did it in the past, it's a real pain  Tongue but will be cool when done.

Also, forum.yacoin.org is now live. Thanks to Sahtor for doing all the work to get it going again!
I know your pain Joe_Bowers. I tried totaling up up all the inputs eligible for staking in CWallet::CreateCoinStake (in wallet.cpp) then printing the result out the log each time it's called. But the total just jumps around randomly. I can't figure out if there is a bug in that function, or I just don't understand how that function goes about finding inputs that should be checked for possible POS block generation. There is supposed to be some unpredictability function so people can't game their POS blocks for some kind of timed attack. Perhaps that's whats making it tricky to understand.

Is it possible to run the wallet in a debugger and watch how it works?
Sure there is. Follow the instructions at https://github.com/yacoin/yacoin/blob/master/doc/build-msw.txt. At step 26 use Makefile.Debug instead of Makefile.Release
Code:
c:\yacoin>mingw32-make -f Makefile.Debug
c:\yacoin>cd debug
c:\yacoin\debug>copy ..\release\*.dll .
c:\yacoin\debug>gdb yacoin-qt.exe
(gdb) list CWallet::CreateCoinStake
1373        return CreateTransaction(vecSend, wtxNew, reservekey, nFeeRet, coinControl);
1374    }
1375
1376    // ppcoin: create coin stake transaction
1377    bool CWallet::CreateCoinStake(const CKeyStore& keystore, unsigned int nBits, int64 nSearchInterval, CTransaction
& txNew)
1378    {
1379        // The following split & combine thresholds are important to security
1380        // Should not be adjusted if you don't understand the consequences
1381        static unsigned int nStakeSplitAge = (60 * 60 * 24 * 90);
1382        int64 nCombineThreshold = GetProofOfWorkReward(GetLastBlockIndex(pindexBest, false)->nBits) / 3;
(gdb) b 1381
Breakpoint 1 at 0x491442: file src\wallet.cpp, line 1381.
(gdb) run    
This will take longer then usual because we are running in debug mode. When it finally fires up you will get:
Code:
Breakpoint 1,CWallet::CreateCoinstake......
(gdb) list
......
(gdb) n
1384     CBigNum bnTargetPerCoinDay;
(gdb) print nStakeSplitAge
$1 = 7776000
(gdb)
sr. member
Activity: 288
Merit: 260
March 12, 2014, 06:16:06 AM
I made a lot of progress on the stake function for Qt today.  I can see why no one did it in the past, it's a real pain  Tongue but will be cool when done.

It's great news!
Can you provide an option not to split staked coins on two parts?
newbie
Activity: 25
Merit: 0
March 12, 2014, 12:21:12 AM
I wrote a How-To for determining how many coins in your wallet are being mined for POS interest.
I show how to use Coin Control get your total number of coins being minded by the YACoin client.

You can find the How-To here:
http://yacointalk.grokonet.com:8090/t/calculate-your-staked-coins-with-coin-control/41
hero member
Activity: 516
Merit: 500
CAT.EX Exchange
March 11, 2014, 11:36:42 PM
Quote

I made a lot of progress on the stake function for Qt today.  I can see why no one did it in the past, it's a real pain  Tongue but will be cool when done.

Also, forum.yacoin.org is now live. Thanks to Sahtor for doing all the work to get it going again!
I know your pain Joe_Bowers. I tried totaling up up all the inputs eligible for staking in CWallet::CreateCoinStake (in wallet.cpp) then printing the result out the log each time it's called. But the total just jumps around randomly. I can't figure out if there is a bug in that function, or I just don't understand how that function goes about finding inputs that should be checked for possible POS block generation. There is supposed to be some unpredictability function so people can't game their POS blocks for some kind of timed attack. Perhaps that's whats making it tricky to understand.

Is it possible to run the wallet in a debugger and watch how it works?
newbie
Activity: 25
Merit: 0
March 11, 2014, 11:17:10 PM
Quote

I made a lot of progress on the stake function for Qt today.  I can see why no one did it in the past, it's a real pain  Tongue but will be cool when done.

Also, forum.yacoin.org is now live. Thanks to Sahtor for doing all the work to get it going again!
I know your pain Joe_Bowers. I tried totaling up up all the inputs eligible for staking in CWallet::CreateCoinStake (in wallet.cpp) then printing the result out the log each time it's called. But the total just jumps around randomly. I can't figure out if there is a bug in that function, or I just don't understand how that function goes about finding inputs that should be checked for possible POS block generation. There is supposed to be some unpredictability function so people can't game their POS blocks for some kind of timed attack. Perhaps that's whats making it tricky to understand.
hero member
Activity: 809
Merit: 501
March 11, 2014, 10:30:06 PM


That one showed up in block 388734 with the transaction id you show.  Do you know how to use the block explorer to search for these things?

http://explorer.yacoin.org/block/9566a239f199b8eac0017ec7663fce59da4c8c33cf7fbe499bbaf4a7210dc948

I'm obviously doing a terrible job explaining things... the txid I just posted is from the transaction in blue letters (1/20/2014 01:02). You made the point that my coins are find and that I just have to find them. Well there are many candidates if you just judge by approx time (within a few days) and coin amounts. But how am I supposed to know the 1/18/2014 14:22 transaction is somehow related to the transaction i just took a screenshot of or the block explorer links you posted previously. It still looks like I just lost coins into stake oblivion if I open up the 1/18/2014 14:22 transaction.

Thanks so much Joe_Bauers. YBC qt will have nothing on YAC qt.
hero member
Activity: 693
Merit: 500
March 11, 2014, 09:45:56 PM


Just focusing on the 18 Jan transaction, I took a screenshot of a possible stake that eventually went through? It was approx 500 coins with that question mark. I have many 125, 250, 500 packets of coins if you will that stake regularly, so it seems impossible to tell if those very coins were indeed staked correctly at a later, or previous, point in time....





That one showed up in block 388734 with the transaction id you show.  Do you know how to use the block explorer to search for these things?

http://explorer.yacoin.org/block/9566a239f199b8eac0017ec7663fce59da4c8c33cf7fbe499bbaf4a7210dc948
hero member
Activity: 802
Merit: 1003
GCVMMWH
March 11, 2014, 09:30:23 PM
The address for all three is my main address YL5kf54wPPXKsXd5T18xCaNkyUsS1DgY7z.

Could this be the first one?
http://explorer.yacoin.org/block/fd34ecf439fc5a88044427250362a4f994e1c2708eccfdb6be5b30977c734224

and this the second one?
http://explorer.yacoin.org/block/27bf348e0e91362dd6eede675eecafd82d91e9350d335f8e02858f55b81ec52e
or this one (your address got 2 POS blocks that day)
http://explorer.yacoin.org/block/affe7771b2eefe4fdc3ea282f5061a24b7c19e5ac43a1168279b5b0328864f40


Do those correlate the the amounts you are looking for?

Joe_Bauers & Sairon, Since the TXID is different than his client thinks it is - could Transaction Malleability be affecting POS generation within the client?

Not sure without looking into a lot further. I think it's partially the case of the horrible way the client shows pos transactions and what groko already fixed, but if the TXID is indeed different, then obviously something weird is going on.  Maybe the YbCoin folks can fix it  Cheesy

I made a lot of progress on the stake function for Qt today.  I can see why no one did it in the past, it's a real pain  Tongue but will be cool when done.

Also, forum.yacoin.org is now live. Thanks to Sahtor for doing all the work to get it going again!
hero member
Activity: 809
Merit: 501
March 11, 2014, 08:30:48 PM
The address for all three is my main address YL5kf54wPPXKsXd5T18xCaNkyUsS1DgY7z.

Could this be the first one?
http://explorer.yacoin.org/block/fd34ecf439fc5a88044427250362a4f994e1c2708eccfdb6be5b30977c734224

and this the second one?
http://explorer.yacoin.org/block/27bf348e0e91362dd6eede675eecafd82d91e9350d335f8e02858f55b81ec52e
or this one (your address got 2 POS blocks that day)
http://explorer.yacoin.org/block/affe7771b2eefe4fdc3ea282f5061a24b7c19e5ac43a1168279b5b0328864f40


Do those correlate the the amounts you are looking for?

Joe_Bauers & Sairon, Since the TXID is different than his client thinks it is - could Transaction Malleability be affecting POS generation within the client?

Ugh well unfortunately I'm not going to have access to my wallet until Wednesday, so I won't be able to check if those transaction are in my wallet until then. :/  I don't know off the top of my head how many other proof of stake transactions (and amounts) I had that day. But yea, that would correlate to the right amounts.

Just focusing on the 18 Jan transaction, I took a screenshot of a possible stake that eventually went through? It was approx 500 coins with that question mark. I have many 125, 250, 500 packets of coins if you will that stake regularly, so it seems impossible to tell if those very coins were indeed staked correctly at a later, or previous, point in time....



hero member
Activity: 809
Merit: 501
March 10, 2014, 11:21:50 AM
The address for all three is my main address YL5kf54wPPXKsXd5T18xCaNkyUsS1DgY7z.

Could this be the first one?
http://explorer.yacoin.org/block/fd34ecf439fc5a88044427250362a4f994e1c2708eccfdb6be5b30977c734224

and this the second one?
http://explorer.yacoin.org/block/27bf348e0e91362dd6eede675eecafd82d91e9350d335f8e02858f55b81ec52e
or this one (your address got 2 POS blocks that day)
http://explorer.yacoin.org/block/affe7771b2eefe4fdc3ea282f5061a24b7c19e5ac43a1168279b5b0328864f40


Do those correlate the the amounts you are looking for?

Joe_Bauers & Sairon, Since the TXID is different than his client thinks it is - could Transaction Malleability be affecting POS generation within the client?

Ugh well unfortunately I'm not going to have access to my wallet until Wednesday, so I won't be able to check if those transaction are in my wallet until then. :/  I don't know off the top of my head how many other proof of stake transactions (and amounts) I had that day. But yea, that would correlate to the right amounts.
Pages:
Jump to: