Hot answers tagged

25

Warning, this is probably wayyy outdated, feel free to make change requests :) Credit Chris from Privex (@chr54 Telegram) >> Producer Name privexinceos How to Vote Via Command Line (cleos): Want the Docker Version? This tutorial assumes you have at least one registered EOS public/private key pair and EOS tokens to stake for the purposes of voting. ...


6

There are basically two steps you need to do. First you create a new account permission and then you give it the authority to use voteproducer action on eosio contract. As a prerequisite for this instruction I expect that your account's active key is stored in a cleos wallet and the wallet is unlocked. 1. Create new account permission For the new ...


4

const sortedBPs = producers.sort(); await eos.voteproducer(userAccountName, proxy, sortedBPs ); ...Adding a sort and moving it outside the await fixed the issue.


4

From eosio GitHub: /** * Every time a vote is cast we must first "undo" the last vote weight, before casting the * new vote weight. Vote weight is calculated as: * * stated.amount * 2 ^ ( weeks_since_launch/weeks_per_year) */ https://github.com/EOSIO/eos/blob/master/contracts/eosio.system/eosio.system.hpp#L90 Maybe that helped. Cypherglass ...


4

There is a system contract for voting. It can be found here: https://github.com/EOSIO/eos/blob/master/contracts/eosio.system/voting.cpp ABI can be found here: https://github.com/EOSIO/eos/blob/master/contracts/eosio.system/eosio.system.abi You can run a cleos action command for the system contract: cleos push action eosio voteproducer '["voter", "proxy",...


3

Confirm you're connecting to the main chain. This can be accomplished with the cleos command cleos -u http://mainnet.genereos.io:80 get info In the -u switch we are specifying which Block Producer we'd like to connect to, you can change this to whomever you like. In the response you should expect "chain_id": "...


3

Call voteproducer.. > eos.voteproducer() CONTRACT eosio FUNCTION voteproducer PARAMETERS { "voter": "account_name", "proxy": "account_name", "producers": "account_name[]" } EXAMPLE { "voter": "", "proxy": "", "producers": [ "" ] } Lookup your account name using your EOS Claim Key. This is one tool for the job: ...


3

Michael Yeates answered this question in one of community Telegrams, this is my rephrase: This validate_b1_vesting check is used in system_contract::changebw() and will cause eosio_assert when B1 tries to undelegate more tokens than available by current point of time. Since they cannot undelegate, they cannot transfer it further. Blockchain is secure.


3

Yes, all contracts have their own account, the same account a person would have. If you want to deploy a contract for public consumption you would create an account for it, then deploy a contract onto it.


2

Vote decay is not intended to prevent the use of bots. The purpose of vote decay is to stop a block producer from becoming 'lazy', in the situation where they get lots of votes from people who then stop using EOS. Imagine if someone with a large amount of tokens voted for a block producer, effectively guaranteeing that the block producer is in the top 21. ...


2

Vote Decay doesn't prevent the use of bots. However, the guiding principals of the EOS blockchain state that users should not use bots. It is, perhaps, possible that automatic voting could be detected, but what would be done in those situations is still unknown.


2

My understanding is that vote power is simply restored by refreshing your vote, if you feel voting each week is too much administrative overhead you should be able to delegate your voting power to someone else, a bit like a politician. Proxy your vote to someone you trust and they vote on your behalf, should you not like a vote they did you can take your ...


2

There is no absolute answer for your question but here is some general advice (as taken from the community, not specifically my own) After 5 or more Block Producer candidates declare publicly that the mainnet is ready for voting (and you should trust those BP candidates are authentic, honest, and have worked closely with the launch team, and support only ...


2

Just a quick shot: Search for blocked/still available names and namespaces like it's done when buying an domain online Cost calculator for creating an account


2

Great idea, I would love to use that. If you need any help, I may use some spare time to participate. in addition to 5. voting: stats for BPs (e.g. how long have they have been active as BP, missed DPoS turns etc.) history of voting for freezing accounts, change account code, protocol/constitution changes 8) When added to EOSIO, information about EOS ...


2

EOS.IO token are not refering to ethereum or erc20 tokens anymore. Blockproducers took a snapshot of the erc20 token by the transactions on ethereum. This is now the initial distribution/balance of EOS token. If you have registered your ethereum adress the account name is holding the tokens on EOS now. A snapshot file of one blockproducer can be fund here. ...


2

EOS is a plutocracy. The idea is that the large token holders have the most to gain or lose from system-wide changes, so their interests should align with the interests of the network as a whole.


2

There is currently nothing in place to limit/cap voting on referendum proposals.


2

Original answer: DPoS (the consensus Algorithm of EOS.IO) is a trade-off between full decentralization and speed. While PoW algorithms allow almost all nodes on the network to create blocks, DPoS gives this privilege to selected Block-Producers (BPs). These are elected by the community. 21 in EOS that are active and 21 in stand by if some BP fails. In theory ...


2

EOS does not have a central server or a single point of failure. All 21 block producers can be replaced and there is a reserve pool 100 block producers waiting at any moment. Here you get a geo map of active producers https://www.eos-radar.com/


1

That's a test function that helps making sure the stake2vote() works as intended. The stake2vote() function fromcontracts/eosio.system/voting.cpp is as follows: double stake2vote( int64_t staked ) { double weight = int64_t( (now() - (block_timestamp::block_timestamp_epoch / 1000)) / (seconds_per_day * 7) ) / double( 52 ); return double(staked) * std:...


1

The official docs are correct: to become a BP candidate you just run $ cleos system regproducer <account> <key> and people can vote for you using their staked tokens as follows: $ cleos system voteproducer prods <from> <for> Lastly there's the EOSGO stuff which specifies that you need to have certain hardware resources, Steemit ...


1

The votes is not the EOS amount, each EOS has a weight with time change, the half-decayed time is one year, the weight of one EOS is 2^(current year(2018)+(days since the year/365) - 2000), and you must multi 10000 because EOS has 4 decimals Also take care that one account can vote to 30 nodes.


1

I'm actually guessing with this answer so vote down if you think it's bad! My theory is that it doesn't go straight back into your balance and instead into a Refund section because the EOS is not actually in your account but in a smart contract which holds your EOS in escrow. This is because it costs CPU & bandwidth to refund the EOS which is ...


1

As per the whitepaper, 15 or more producers have to agree on the 21 BPs that will produce the next 126 blocks (6 blocks for each of the 21 BPs; a round) and form a schedule. To accomplish this, the proposed schedule is introduced in the block header of each block that starts a new round, and, if it's signed by 15+ BPs, it's considered an active schedule and ...


1

Anyone who owns a EOS registered token can vote,You can vote and change your vote as many times you want.Each "staked" token can potentially vote for up to 30 different BPs. Votes are weighted by the quantity of tokens being staked. The amount of votes you have is equal to the amount of staked tokens that you have. So for example, if in your account you ...


1

Two suggestions: 1) Try to run it with admin privileges sudo docker pull ... 2) If that still fails, clean your docker images/volumes/containers. Afterwards you can try the production image. With sudo docker pull eosio/eos Edit: Seems that your docker daemon is not running. Try to run dockerd Maybe use some of the answers from this link


1

To add to the other replies, see the stake2vote() function in voting.cpp, which converts an EOS stake into a vote weight: double stake2vote( int64_t staked ) { /// TODO subtract 2080 brings the large numbers closer to this decade double weight = int64_t( (now() - (block_timestamp::block_timestamp_epoch / 1000)) / (seconds_per_day * 7) ) / ...


1

When you vote your tokens are staked for 3 days. If the exchanges were to use the users's funds to vote, these tokens would get staked (essentially frozen, unmovable) and they run the risk of not having enough tokens should people want to withdraw their tokens. So while it is theoretically and practically possible for exchanges to use the users's funds to ...


1

The main worry of a single owner running multiple candidacies for multiple BP spots is related to a centralization of the network. While there is no technical way to "ban" a misbehaving candidate, community currently highlights those who are under the suspicion in Telegram chats, community forums, reddit and other mediums. If proven right, candidates risk ...


Only top voted, non community-wiki answers of a minimum length are eligible