Skip to content

Transaction stuck in tx_pool #93

Open

Description

@lakshaygaur

Hi ,
Ive been sending transactions of heavy amounts like 10 million for a while. Its been almost 10-15 days since i started my currency and for the past 2 days i can not do transactions of 10 million coins anymore.
If i do , transactions get stuck in mining pool and both wallets have the respective balance it in their pending state.

screenshot 2018-02-20 19 56 22

Activity

  1. pmitchev commented on Feb 20, 2018

    @pmitchev

    Share you config file

  2. lakshaygaur commented on Feb 21, 2018

    @lakshaygaur
    Author

    `
    #pragma once

    #include
    #include
    #include

    namespace SofoAltCoin {
    namespace parameters {

    const uint64_t MONEY_SUPPLY = 15000000000000000 ; // Total Coins
    const size_t SOFOALTCOIN_DISPLAY_DECIMAL_POINT = 8;
    const char GENESIS_COINBASE_TX_HEX[] = "010501ff000180c0a8ca9a3a0289e79607e872eb6a5ef54b88e17b578056b174ca0afa73c2aaa907ae66ce3e332101c7d860b50684329143135d1f751f3e908bdc3165fe56d1002284401a112532c0";
    const uint64_t SOFOALTCOIN_PUBLIC_ADDRESS_BASE58_PREFIX = 108;

    const uint32_t SOFOALTCOIN_MAX_BLOCK_NUMBER = 500000000;
    const size_t SOFOALTCOIN_MAX_BLOCK_BLOB_SIZE = 500000000;
    const size_t SOFOALTCOIN_MAX_TX_SIZE = 1000000000;

    const uint32_t SOFOALTCOIN_MINED_MONEY_UNLOCK_WINDOW = 5; // 10 before ... no of blocks required to be mined for pending balance to turn to available
    const uint64_t SOFOALTCOIN_BLOCK_FUTURE_TIME_LIMIT = 60 * 60 * 2;

    const size_t BLOCKCHAIN_TIMESTAMP_CHECK_WINDOW = 60;

    const uint32_t MANDATORY_TRANSACTION = 0; //0 before .... if 1 , allows only blocks with more than 1 real transaction (excluding the base transaction) are valid
    const uint32_t KILL_HEIGHT = 0; // use to define the maximum height of a blockchain
    const uint64_t TAIL_EMISSION_REWARD = 0;
    const size_t SOFOALTCOIN_COIN_VERSION = 0;
    const bool ZAWY_DIFFICULTY_V2 = 0;
    const unsigned EMISSION_SPEED_FACTOR = 23; //18 previously
    const uint64_t GENESIS_BLOCK_REWARD = 0;
    static_assert(EMISSION_SPEED_FACTOR <= 8 * MONEY_SUPPLY, "Bad EMISSION_SPEED_FACTOR");

    const size_t SOFOALTCOIN_REWARD_BLOCKS_WINDOW = 100;
    const size_t SOFOALTCOIN_BLOCK_GRANTED_FULL_REWARD_ZONE = 100000; // size of block (bytes) after which reward for block calculated using block size
    const size_t SOFOALTCOIN_BLOCK_GRANTED_FULL_REWARD_ZONE_V2 = 20000;
    const size_t SOFOALTCOIN_BLOCK_GRANTED_FULL_REWARD_ZONE_V1 = 10000;
    const size_t SOFOALTCOIN_BLOCK_GRANTED_FULL_REWARD_ZONE_CURRENT = SOFOALTCOIN_BLOCK_GRANTED_FULL_REWARD_ZONE;
    const size_t SOFOALTCOIN_COINBASE_BLOB_RESERVED_SIZE = 600;

    const uint64_t MINIMUM_FEE = 1; // pow(10, 6)
    const uint64_t DEFAULT_DUST_THRESHOLD = 0; // pow(10, 6)
    // Use 0 for default max transaction size limit
    const uint64_t MAX_TRANSACTION_SIZE_LIMIT = SOFOALTCOIN_BLOCK_GRANTED_FULL_REWARD_ZONE * 125 / 100 - SOFOALTCOIN_COINBASE_BLOB_RESERVED_SIZE;
    const uint64_t DEFAULT_FEE = MINIMUM_FEE;

    const uint64_t DIFFICULTY_TARGET = 120; // seconds
    const uint64_t EXPECTED_NUMBER_OF_BLOCKS_PER_DAY = 24 * 60 * 60 / DIFFICULTY_TARGET;
    const size_t DIFFICULTY_WINDOW = EXPECTED_NUMBER_OF_BLOCKS_PER_DAY; // blocks
    const size_t DIFFICULTY_WINDOW_V1 = DIFFICULTY_WINDOW;
    const size_t DIFFICULTY_WINDOW_V2 = DIFFICULTY_WINDOW;
    const size_t DIFFICULTY_CUT = 60; // timestamps to cut after sorting
    const size_t DIFFICULTY_CUT_V1 = DIFFICULTY_CUT;
    const size_t DIFFICULTY_CUT_V2 = DIFFICULTY_CUT;
    const size_t DIFFICULTY_LAG = 15; // !!!
    const size_t DIFFICULTY_LAG_V1 = DIFFICULTY_LAG;
    const size_t DIFFICULTY_LAG_V2 = DIFFICULTY_LAG;
    static_assert(2 * DIFFICULTY_CUT <= DIFFICULTY_WINDOW - 2, "Bad DIFFICULTY_WINDOW or DIFFICULTY_CUT");

    const size_t MAX_BLOCK_SIZE_INITIAL = 100000;
    const uint64_t MAX_BLOCK_SIZE_GROWTH_SPEED_NUMERATOR = 100 * 1024;
    const uint64_t MAX_BLOCK_SIZE_GROWTH_SPEED_DENOMINATOR = 365 * 24 * 60 * 60 / DIFFICULTY_TARGET;

    const uint64_t SOFOALTCOIN_LOCKED_TX_ALLOWED_DELTA_BLOCKS = 1;
    const uint64_t SOFOALTCOIN_LOCKED_TX_ALLOWED_DELTA_SECONDS = DIFFICULTY_TARGET * SOFOALTCOIN_LOCKED_TX_ALLOWED_DELTA_BLOCKS;

    const uint64_t SOFOALTCOIN_MEMPOOL_TX_LIVETIME = 60 * 60 * 24; //seconds, one day
    const uint64_t SOFOALTCOIN_MEMPOOL_TX_FROM_ALT_BLOCK_LIVETIME = 60 * 60 * 24 * 7; //seconds, one week
    const uint64_t SOFOALTCOIN_NUMBER_OF_PERIODS_TO_FORGET_TX_DELETED_FROM_POOL = 7; // SOFOALTCOIN_NUMBER_OF_PERIODS_TO_FORGET_TX_DELETED_FROM_POOL * SOFOALTCOIN_MEMPOOL_TX_LIVETIME = time to forget tx

    const size_t FUSION_TX_MAX_SIZE = SOFOALTCOIN_BLOCK_GRANTED_FULL_REWARD_ZONE_CURRENT * 30 / 100;
    const size_t FUSION_TX_MIN_INPUT_COUNT = 12;
    const size_t FUSION_TX_MIN_IN_OUT_COUNT_RATIO = 4;

    const uint32_t KEY_IMAGE_CHECKING_BLOCK_INDEX = 0;
    const uint32_t UPGRADE_HEIGHT_V2 = 1;
    const uint32_t UPGRADE_HEIGHT_V3 = 2;
    const unsigned UPGRADE_VOTING_THRESHOLD = 90; // percent
    const uint32_t UPGRADE_VOTING_WINDOW = EXPECTED_NUMBER_OF_BLOCKS_PER_DAY; // blocks
    const uint32_t UPGRADE_WINDOW = EXPECTED_NUMBER_OF_BLOCKS_PER_DAY; // blocks
    static_assert(0 < UPGRADE_VOTING_THRESHOLD && UPGRADE_VOTING_THRESHOLD <= 100, "Bad UPGRADE_VOTING_THRESHOLD");
    static_assert(UPGRADE_VOTING_WINDOW > 1, "Bad UPGRADE_VOTING_WINDOW");

    const char SOFOALTCOIN_BLOCKS_FILENAME[] = "blocks.bin";
    const char SOFOALTCOIN_BLOCKINDEXES_FILENAME[] = "blockindexes.bin";
    const char SOFOALTCOIN_POOLDATA_FILENAME[] = "poolstate.bin";
    const char P2P_NET_DATA_FILENAME[] = "p2pstate.bin";
    const char MINER_CONFIG_FILE_NAME[] = "miner_conf.json";

    } // parameters

    const char SOFOALTCOIN_NAME[] = "abc";

    const uint8_t TRANSACTION_VERSION_1 = 1;
    const uint8_t TRANSACTION_VERSION_2 = 2;
    const uint8_t CURRENT_TRANSACTION_VERSION = TRANSACTION_VERSION_1;
    const uint8_t BLOCK_MAJOR_VERSION_1 = 1;
    const uint8_t BLOCK_MAJOR_VERSION_2 = 2;
    const uint8_t BLOCK_MAJOR_VERSION_3 = 3;
    const uint8_t BLOCK_MINOR_VERSION_0 = 0;
    const uint8_t BLOCK_MINOR_VERSION_1 = 1;

    const size_t BLOCKS_IDS_SYNCHRONIZING_DEFAULT_COUNT = 10000; //by default, blocks ids count in synchronizing
    const size_t BLOCKS_SYNCHRONIZING_DEFAULT_COUNT = 200; //by default, blocks count in blocks downloading
    const size_t COMMAND_RPC_GET_BLOCKS_FAST_MAX_COUNT = 1000;

    const int P2P_DEFAULT_PORT = 10124;
    const int RPC_DEFAULT_PORT = 10125;

    const size_t P2P_LOCAL_WHITE_PEERLIST_LIMIT = 1000;
    const size_t P2P_LOCAL_GRAY_PEERLIST_LIMIT = 5000;

    const size_t P2P_CONNECTION_MAX_WRITE_BUFFER_SIZE = 16 * 1024 * 1024; // 16 MB
    const uint32_t P2P_DEFAULT_CONNECTIONS_COUNT = 8;
    const size_t P2P_DEFAULT_WHITELIST_CONNECTIONS_PERCENT = 70;
    const uint32_t P2P_DEFAULT_HANDSHAKE_INTERVAL = 60; // seconds
    const uint32_t P2P_DEFAULT_PACKET_MAX_SIZE = 50000000; // 50000000 bytes maximum packet size
    const uint32_t P2P_DEFAULT_PEERS_IN_HANDSHAKE = 250;
    const uint32_t P2P_DEFAULT_CONNECTION_TIMEOUT = 5000; // 5 seconds
    const uint32_t P2P_DEFAULT_PING_CONNECTION_TIMEOUT = 2000; // 2 seconds
    const uint64_t P2P_DEFAULT_INVOKE_TIMEOUT = 60 * 2 * 1000; // 2 minutes
    const size_t P2P_DEFAULT_HANDSHAKE_INVOKE_TIMEOUT = 5000; // 5 seconds
    const char P2P_STAT_TRUSTED_PUB_KEY[] = "";

    const char* const SEED_NODES[] = { "localhost:10124"};

    struct CheckpointData {
    uint32_t index;
    const char* blockId;
    };

    const std::initializer_list CHECKPOINTS = { };
    } // SofoAltCoin

    #define ALLOW_DEBUG_COMMANDS
    `

  3. vcambur commented on Mar 13, 2018

    @vcambur

    @lakshaygaur have you been able to resolve the issue ?

  4. lakshaygaur commented on Mar 13, 2018

    @lakshaygaur
    Author

    @vcambur No , not yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions