Java implementation of the Tron whitepaper
Switch branches/tags
3.2.2_unitTest Add_trigger_kittyCore_test_Case FullNode_SolidityNode_merge Implement_generate_address_api_for_master Implement_generate_address_api Modify_deploy.sh Modify_testng.xml Multi_OS_Build O-d-y Odyssey_v3.2 Odyssey_v3.2.1 Odyssey_v3.2.2 SWCwaterLine actuator_check ad-d add-tcp-flow-count add-tcp-valid add-test-case add-test-code-liang add_Energy_TRC_stest add_RecommendProperties add_TVM_case add_TVM_test_case add_costlogic_fileds_for_smartcontract add_date_in_log add_details_in_program_result add_do_stest_task_in_native_from_docker_server add_feecheck add_function_in_contract_op add_getMaxCpuTimeOfOneTX add_keystore add_lock_for_dialogoptional add_log_for_switchFork add_log_solidity add_mem_limit add_message add_more_call_value_tests add_more_precompiled_method add_network_config add_nonce_to_internalTransaction add_repush_size add_saveCodeEnergy add_slot_verification_for_handling_block add_slot_verification_for_handling_block2 add_startup_script add_stest_Stress_Case add_stest_new_interface_case add_transfer_logic add_transferToken_ut add_transferUT_DatawordUT_MemoryUT_for_tvm add_trc10_performancetest add_tvm_unit_test add_unit_test add_ut_for_transactioninfo add_validate_for_vm_transfer add_verificaiton_for_creating_proposal add_vm_impl add_vm_precompiled_contract_ut add_vm_trace addDupExMessage addSyncLoop addTimeRet addTxWaterLine adding_logs addjacoco addte addtestng addversion2 allow_bad_trx_master allow_bad_trx_tron allowance_test applyBlock_khaos_remove assign_headblock_to_constantcall avoid_broadcast_some_invalid_transactions avoidFloodAttack big_bad_block block_forge broadcast_constant cache_all_per_snapshot cache_2000 cache_5000 cacheDB_merge_from_develop cacheDB cancel_stest_tmp catch_the_timeout_reason_and_catch_the_timeout_reason catch_the_timeout_reason change_log_level_in_vm change_maven_repo change_repush check_db check_exception check_name check_outOfTime checkDup checkcputime_at_the_end_of_execute_op checkdb32 child_storage clean_code cleanup-dependencies cleanup-old-code clear_active_peer close_precompile_log close_thread co'm code_cache comment_out_banTransaction comment_out_freeze_unfreeze comment_out_precompile compaare compare_for_merging compare3.2 compare3.2.1.2 constant_function_can_call_fallback constantcall_not_touch_db consumeBandwidth_before_init_deposit continue_stest create_contract_using_different_address create_wallet_extension_apis create_walletExtension_services createaccount_add_fee_to_blackhole db_change_config db_io dbg_huzhenyuan dbversion_default_2 debug_block_hash del_check_in_solidity del_snapshot delete_debug_log deletefile detailing_throwable develop-evan-accountName develop-evan-address develop-evan-address0 develop-evan-grpcapi develop-evan-httpapi develop-evan-inputpassword develop-evan-keystore develop-evan-keystrore develop-evan-mainnetaddress develop-evan-offineapi develop-evan-rmHash.sha256 develop-evan-rmchineses develop-evan-rmgetAllAccounts develop-evan-transferAssetActuatorTest develop-evan-votewitness develop-evan-witnessupdate develop-huzhenyuan-keystore develop-self develop-smartcontract develop_event_subscribe develop_test develop_zksnark develop different_code_debug disconnect-check disconnect_unit_test distinguish__timeout distinguish_timeout distinguishTimeout do_not_be_evil do_not_print_tracestack doc dont_check_time_on_solidity dont_print_tracestack_in_soliditynode empty_check enable_extension enable_vm_tranfer_Validation energy_limit_fork eraseBlockWhenTimeOut ev_release ev2-improve evan-addsignapi evan-gettransactionsign evan-rm-hash.sha256 event_export event_parser_staging event_parser exception_desc export_ev2 f'e'a'tu fast-sync-dev fastPop feat/internal_tx_switch feature/ALLOW_CREATION_OF_CONTRACTS feature/AddUnitTest feature/CheckDB feature/FixBugForNullPointerException feature/Optimizition feature/Tvm_Grammar_test feature/account-state feature/adaptive_resource_limit feature/adaptiveResourceLimit feature/add_Manager feature/add_actuator_test feature/add_amount_into_transactionResult feature/add_annotation feature/add_balance_check feature/add_balancecheck feature/add_deployconfig feature/add_dokerconfig feature/add_getNextMaintenanceTime_api feature/add_gitignore feature/add_log_info feature/add_new_exchange_and_energy_chainparameters feature/add_slot_verification_for_handling_block feature/add_storage_method feature/add_suspensiveTransaction_thread feature/add_token_freeze feature/add_transactionInfo feature/add_tvm_grammartest feature/add_vm_switch feature/addGRWithdrawLimit feature/addTransHistorySwitch feature/asynchronousWrite feature/bft_confirmation feature/caseInsensitive feature/chainparameters_add feature/change_log_level feature/checkDB2Value feature/checkValueDB2 feature/committee_for_test feature/committee feature/cpu_calculation feature/cpu_storatge_resource feature/delegate_resource_api feature/delegate_resource feature/energy_fee feature/energy feature/exchange_withdraw_validate feature/exchange feature/fix_blockId_error feature/fix_fee_check feature/fix_manager_test feature/improve_TransactionStoreTest feature/improve_deploysh feature/improve_internalTransaction_stest feature/improve_stest feature/improve_stest_3.2 feature/improve_stest_3_2 feature/improve_witness feature/inquiry_pagination_for_Proposa_and_exchange feature/internalTrs_stest feature/mdf_assetIssue_validate feature/mdf_handleBlock feature/mdf_logger_grade feature/new_exchange_transaction feature/nf_storage feature/optimize_performance feature/processMaintenance feature/refactor_getChainParameter feature/rm_gr_power feature/send_fee_into_block_hole_account feature/smartcontract_energy_http feature/storage_market feature/test_block_test2 feature/test_block_1 feature/tokenSameName feature/transaction_history_store feature/transaction_history_store_2 feature/transaction_history feature/unitTestSnapShotManager feature/update_token_v1 feature/update_token feature/verifyDB feature/witness_schedule_db feature/zksnark_api fix-mul-thread-bug fix-sycn-l fix_CREATE_CMD_bug fix_NullPointerException_for_getCallValue fix_bandwidth fix_bug_vm fix/constant_call fix/constant_exception fix_contract_call_contract_bug fix/create_child_deposit fix_debug_2 fix/delete_account fix_deploy_call_value fix/ensure_close_db fix/free_net_used fix_integer_add_safety_bug fix_internal_show fix_long_overflow fix_null_bug_and_add_test fix_precompile_db_not_revert_issue fix/print_useless_log fix_rethrow_exception_vaildate_sign fix_retry fix_runtime_bug_for_vm_demo fix_runtime_error_not_throw_properly fix/runtimeerror_deleteaccount fix_s_test fix_solidity_sync_issue fix_solidity fix/sstore_put fix_stest_failed fix/storage_put fix_test fix_timeout_bug fix_timeout_not_cost fix/token_balance_npe fix/token_str fix_tokenid_when_create fix_transfer_validation_in_internalTransaction_bug fix_transfer_yourself_value_bug fix_tron_ripempd160_length fix/value_deepcopy fix_wallet_constant fixDBbug for_cpu_test for_solidity for_statistics_merge_Odyssey_v3.2.2 for_stest_stress for_test_energyLimit format-liang format_logs from_2.0.4 from_3.2_and_3.1.3 fullgc _fullnode_soliditynode_merge fullnode_soliditynode_merge g_block gen_contract_addr generate_contract_address get_balance_bak1 get_balance get_paginated_asset_issue grpc_broadcast grpc_broadcast1 handle_trx_miss_when_generate_block hardfork_effective_when_maintenance hardfork_update_in_head hotfix/fix_maintenance_missblock hotfix/odyssey3.0_minor_change hotfix/remove_gr_power hotfix/v3.2.2_energy_limit hou-lei http_api hzs_local_branch i'mp impl_getunchecked_transactionStore impl_trc10_token implement_Jump_interpreterTest implement_precompiled_functions implement_vote_for_vm improve_hardFork improve_index_performance improve_index improve_stest_stability improve_test improve_transfer_performance improve_trc10performance index_key_instead_of_object index_switch init_account_for_develop init_vote interal_trans_log ke'y kkkk kookiekrak-patch-1 level_flush_disk_per_put leveldb_do_not_create_sst_on_Windows_release log_level_info_to_debug log_runtime_error_when_constant log_runtime_error_when_constant1 logback_conf m_p2p1 m_p2p2 m_p2p3 ma-te ma's master-addTransactionsign master-evan-addressvalid master-evan-easytranfer master-evan-easytransfer master_switch_back_when_switch_fork_failed master mater mdfNPE2BadBlockException mdfunittest mem_limit memDB memDB2 memDB3 merge_fix_solidity_sync_issue_to_master merge_master merge322 modify-broad-fetch modify-code-style-liang modify-disconnect modify-log-save-time modify-net-connect modify-readme modify-tcp-connect-time modify-test modify_energy_limit modify_gas_value_about_storage modify_stest_assetissue_case move_finalization_to_test move_stest_to_docker move_validate_to_processtransaction mu'l multi_sign new_deposit new_storage_version new_version new_vm_deposit nnn no_gradle_daemon no_witness_shuffle node-info-dev old_develop online_pressure online_pressure_3.1.3 opt_index optSolidty optimization-solidity optimize_cpu_time optimizeLog opz_storage p2p_advblock p2p_bk p2p_bkup p2p_bkup1 p2p_bkup2 p2p_block p2p_cfg p2p_conf p2p_log1 p2p_m p2p_msg_q p2p_msg_queue p2p_msg p2p_msgproc p2p_node p2p_ok p2p_okex p2p_pressure_test p2p_sol p2p_stat p2p_style p2p_t3 p2p_t4 p2p_test p2p_test1 p2p_test_1 p2p_test2 p2p_tmsg p2p_trx p2p_udp p2p p2p_51 paralle_valid_sign parallel_flush_db parallel_flush precompile_exception_handling pressure_stable pressureTest_network pressureTest_network2 pressureTest_network3 pressureTest_network4 print_storage printlogwhenshutdown put_flush_into_snapshotroot read_code readme_solidity refact_create_trx refactor_extract_method refactor/storage refactor/vm_storage refactor/vm refactorBlkCap refactorStoreException refine_assertIssue_for_precompile_function refine_contractState refine_internalTransaction refine_nullpointerexception_in_vm refine_return_value_for_precompiled_functions refine_root_internaltransaction_hash refine_suicide_logic_for_token refine_transfertoken_logic refine_vm_transfer_test refresh_TVM_testCase release remove-log remove-reasoncode-class remove-reasoncode remove_account_codeHash remove_db_create remove_unused_code remove_useless_codde remove_useless_code remove_vmtransaction rename_gas_energy replay_block repush_to_another_thread repush_to_thread resolve_fork_unittest revert-1273-develop revert-1454-cancel_stest_tmp revert_bandwidth revert_validate rmSunAddress rmSunAddressR score-system-liang set-isWitness set_max_size_khaos set_witness_count setResult sh-y shasta-V2 shasta-dev shutdown_hook shy_bugfix shy_code_format shy_develop_fix_bug shy_develop shy_disorderblock_just_test shy_disorderblock shy_log_level shy_unittest_windows size solid_cfg solid_restruct solidity_node solidityapi soliditynode_use_fullnode_databse soliditynodedup sonar sonarcloud spend_all_energy_when_except sr-product-two-block-dev ssss state_check_release state_check stest_Case_merge_to_master stest_VM_detail_fee stest_adapt_OriginEnergyLimit stest_adapt_deploy_contract_cost_increase stest_adapt_google_checkstyle stest_add_delegateResorce_case stest_background_flow_case stest_client stest_modify storage_delete storage_key_no_debug storage_version storagecache_research stress_parallel_sign sunhaoyu_ceshi support_storage_version switch_back_when_fail_to_switch_fork switch_back_when_switch_fork_failed sync_get_lost_block sync_msg sync_restruct sync_trx sync tapos_check template_stest test_about_energy test_branch test_ev2 test/mock_mainnet test_sc test_sonr test/storage test_suicide_all_token_time test_use_energy_report test_v2 test_vm_0824 test_vm_20180825 thorwBlockException time_benchmark timeout_not_on_chain timestamp_use_seconde_in_vm tmao1129-patch-1 tmp_modify_to_develop tool/stress-test tool/stress-test3.2 transaction_bytes transactionInfo_improvement transation-receipt-dev transfer_proposal_order_restrict transfer_stest_to_docker tron_application_context trx_copy trx_valid tt udpate_token update_config update_grpc_version update_master_seed update_max_witness update_p2p_version update_seed update_solidity_not_need_del_store update_version upgrade_block_version_0 upgrade_version_2 upgrade_version_3 upnp-dev use_rocksdb use_3m_check_mem_in_anyplace useTxRawHash useVersionForHardFork v3.2.1.2_mock_witness vm-deposite-storage vm_cache_with_deposit_actuator vm_cache vm_code_smell vm_merge_internalTrx vm_polish vm_readwrite_cache vm_refactor_api vm_suicide vm_switch vm_timing w_p2p witness_test wubin12-patch-1 wubin12-patch-2 wubin12-patch-3 yrp_3 z'ca'sh z'ca zcash
Nothing to show
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github refactor and code the main loopls Jan 30, 2018
docker feat: add Docker start FullNode file. Apr 2, 2018
docs/images Cleanup readme Mar 28, 2018
gradle/wrapper refactor May 24, 2018
src limit the upper number of signs in a transaction Dec 5, 2018
.codeclimate.yml refactor and code the main loopls Jan 30, 2018
.gitignore add gitignore :Wallet Nov 6, 2018
.travis.yml Add code coverage Sep 25, 2018
CONTRIBUTING.md 1. java-tron refactor Jan 19, 2018
Dockerfile Add file to build docker image. Apr 3, 2018
LICENSE 1. java-tron refactor Jan 19, 2018
README.md Change Quickstart link URL to Developers Hub Docke Nov 6, 2018
TRON_Protobuf_Protocol_document.md feat(gettransactioninfo): add gettransactioninfobyid for fullnode Oct 31, 2018
build.gradle common support Nov 1, 2018
deploy.sh Open stest task in master branch Nov 30, 2018
gen.sh add a script to generate java code. Feb 9, 2018
gradlew iQIzBAABCgAdFiEEjmx9hHWXF144JCNvYptaTSaHm1AFAlpyCIsACgkQYptaTSaH Jan 31, 2018
gradlew.bat Enable starting program using command line Jan 6, 2018
jitpack.yml Add jitpack configuration Jun 2, 2018
lombok.config add logger Mar 21, 2018
settings.gradle 1. java-tron refactor Jan 19, 2018
sonar-project.properties add gradlew build for static analize. May 26, 2018
start.sh read LOCAL_WITNESS_PRIVATE_KEY from env for test net to start java tron Apr 5, 2018
stest_native.sh Modify stest native shell name and delete stest.log Oct 16, 2018
tron.enc feat: add travis to deploy. Apr 3, 2018
tron.sh fix:move "sonar-scanner" in "tron.sh". May 30, 2018
work.sh Update work.sh Jun 24, 2018
波场Protobuf协议文档.md docs: update document Nov 5, 2018

README.md



java-tron

Java implementation of the Tron Protocol

How to BuildHow to RunLinksDocumentationContributingCommunity

What's TRON?

TRON is a project dedicated to building the infrastructure for a truly decentralized Internet.

The Tron Protocol, one of the largest blockchain based operating systems in the world, offers scalable, high-availability and high-throughput support that underlies all the decentralized applications in the TRON ecosystem.

TRON enables large-scale development and engagement. With over 2000 transactions per second (TPS), high concurrency, low latency and massive data transmission, TRON is ideal for building decentralized entertainment applications. Free features and incentive systems allow developers to create premium app experiences for users.

TRON Protocol and the Tron Virtual Machine (TVM) allow anyone to develop decentralized applications (DAPPs) for themselves or their communities with smart contracts thereby making decentralized crowdfunding and token issuance easier than ever.

How to Build

Prepare dependencies

  • JDK 1.8 (JDK 1.9+ are not supported yet)
  • On Linux Ubuntu system (e.g. Ubuntu 16.04.4 LTS), ensure that the machine has Oracle JDK 8, instead of having Open JDK 8 in the system. If you are building the source code by using Open JDK 8, you will get Build Failed result.
  • Open UDP ports for connection to the network
  • MINIMUM 2 ENERGY Cores

Build and Deploy automatically using scripts

Getting the code with git

  • Use Git from the Terminal, see the Setting up Git and Fork a Repo articles.
  • develop branch: the newest code
  • master branch: more stable than develop. In the shell command, type:
git clone https://github.com/tronprotocol/java-tron.git
git checkout -t origin/master

Including java-tron as dependency

  • If you don't want to checkout the code and build the project, you can include it directly as a dependency

Using gradle:

repositories {
   maven { url 'https://jitpack.io' }
}
dependencies {
   implementation 'com.github.tronprotocol:java-tron:develop-SNAPSHOT'
}

Using maven:

...
<repositories>
  <repository>
      <id>jitpack.io</id>
      <url>https://jitpack.io</url>
  </repository>
</repositories>
...
<dependency>
    <groupId>com.github.tronprotocol</groupId>
    <artifactId>java-tron</artifactId>
    <version>develop-SNAPSHOT</version><!--You can use any of the tag/branch name available-->
</dependency>

Building from source code

  • Build in the Terminal
cd java-tron
./gradlew build
  • Build in IntelliJ IDEA (community version is enough):

    Please run ./gradlew build once to build the protocol files

    1. Start IntelliJ. Select File -> Open, then locate to the java-tron folder which you have git cloned to your local drive. Then click Open button on the right bottom.
    2. Check on Use auto-import on the Import Project from Gradle dialog. Select JDK 1.8 in the Gradle JVM option. Then click OK.
    3. IntelliJ will open the project and start gradle syncing, which will take several minutes, depending on your network connection and your IntelliJ configuration
    4. Enable Annotations, Preferences -> Search annotations -> check Enable Annotation Processing.
    5. After the syncing finished, select Gradle -> Tasks -> build, and then double click build option.

Running

Running multi-nodes

https://github.com/tronprotocol/Documentation/blob/master/TRX/Solidity_and_Full_Node_Deployment_EN.md

Running a local node and connecting to the public testnet

Running a Super Representative Node for mainnet

  • Use the executable JAR(Recommended way)
java -jar FullNode.jar -p your private key --witness -c your config.conf(Example:/data/java-tron/config.conf)
Example:
java -jar FullNode.jar -p 650950B193DDDDB35B6E48912DD28F7AB0E7140C1BFDEFD493348F02295BD812 --witness -c /data/java-tron/config.conf

This is similar to running a private testnet, except that the IPs in the config.conf are officially declared by TRON.

Correct output
20:43:18.138 INFO  [main] [o.t.p.FullNode](FullNode.java:21) Full node running.
20:43:18.486 INFO  [main] [o.t.c.c.a.Args](Args.java:429) Bind address wasn't set, Punching to identify it...
20:43:18.493 INFO  [main] [o.t.c.c.a.Args](Args.java:433) UDP local bound to: 10.0.8.146
20:43:18.495 INFO  [main] [o.t.c.c.a.Args](Args.java:448) External IP wasn't set, using checkip.amazonaws.com to identify it...
20:43:19.450 INFO  [main] [o.t.c.c.a.Args](Args.java:461) External address identified: 47.74.147.87
20:43:19.599 INFO  [main] [o.s.c.a.AnnotationConfigApplicationContext](AbstractApplicationContext.java:573) Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@124c278f: startup date [Fri Apr 27 20:43:19 CST 2018]; root of context hierarchy
20:43:19.972 INFO  [main] [o.s.b.f.a.AutowiredAnnotationBeanPostProcessor](AutowiredAnnotationBeanPostProcessor.java:153) JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
20:43:20.380 INFO  [main] [o.t.c.d.DynamicPropertiesStore](DynamicPropertiesStore.java:244) update latest block header timestamp = 0
20:43:20.383 INFO  [main] [o.t.c.d.DynamicPropertiesStore](DynamicPropertiesStore.java:252) update latest block header number = 0
20:43:20.393 INFO  [main] [o.t.c.d.DynamicPropertiesStore](DynamicPropertiesStore.java:260) update latest block header id = 00
20:43:20.394 INFO  [main] [o.t.c.d.DynamicPropertiesStore](DynamicPropertiesStore.java:265) update state flag = 0
20:43:20.559 INFO  [main] [o.t.c.c.TransactionCapsule](TransactionCapsule.java:83) Transaction create succeeded!
20:43:20.567 INFO  [main] [o.t.c.c.TransactionCapsule](TransactionCapsule.java:83) Transaction create succeeded!
20:43:20.568 INFO  [main] [o.t.c.c.TransactionCapsule](TransactionCapsule.java:83) Transaction create succeeded!
20:43:20.568 INFO  [main] [o.t.c.c.TransactionCapsule](TransactionCapsule.java:83) Transaction create succeeded!
20:43:20.569 INFO  [main] [o.t.c.c.TransactionCapsule](TransactionCapsule.java:83) Transaction create succeeded!
20:43:20.596 INFO  [main] [o.t.c.d.Manager](Manager.java:300) create genesis block
20:43:20.607 INFO  [main] [o.t.c.d.Manager](Manager.java:306) save block: BlockCapsule

Then observe whether block synchronization success,If synchronization successfully explains the success of the super node

Running a Super Representative Node for private testnet

  • use master branch

  • You should modify the config.conf

    1. Replace existing entry in genesis.block.witnesses with your address.
    2. Replace existing entry in seed.node ip.list with your ip list.
    3. The first Super Node start, needSyncCheck should be set false
    4. Set p2pversion to 61
  • Use the executable JAR(Recommended way)

cd build/libs
java -jar FullNode.jar -p your private key --witness -c your config.conf (Example:/data/java-tron/config.conf)
Example:
java -jar FullNode.jar -p 650950B193DDDDB35B6E48912DD28F7AB0E7140C1BFDEFD493348F02295BD812 --witness -c /data/java-tron/config.conf
Show Output
> ./gradlew run -Pwitness

> Task :generateProto UP-TO-DATE
Using TaskInputs.file() with something that doesn't resolve to a File object has been deprecated and is scheduled to be removed in Gradle 5.0. Use TaskInputs.files() instead.

> Task :run 
20:39:22.749 INFO [o.t.c.c.a.Args] private.key = 63e62a71ed39e30bac7223097a173924aad5855959de517ff2987b0e0ec89f1a
20:39:22.816 WARN [o.t.c.c.a.Args] localwitness size must be one, get the first one
20:39:22.832 INFO [o.t.p.FullNode] Here is the help message.output-directory/
三月 22, 2018 8:39:23 下午 org.tron.core.services.RpcApiService start
信息: Server started, listening on 50051
20:39:23.706 INFO [o.t.c.o.n.GossipLocalNode] listener message
20:39:23.712 INFO [o.t.c.o.n.GossipLocalNode] sync group = a41d27f10194c53703be90c6f8735bb66ffc53aa10ea9024d92dbe7324b1aee3
20:39:23.716 INFO [o.t.c.s.WitnessService] Sleep : 1296 ms,next time:2018-03-22T20:39:25.000+08:00
20:39:23.734 WARN [i.s.t.BootstrapFactory] Env doesn't support epoll transport
20:39:23.746 INFO [i.s.t.TransportImpl] Bound to: 192.168.10.163:7080
20:39:23.803 INFO [o.t.c.n.n.NodeImpl] other peer is nil, please wait ... 
20:39:25.019 WARN [o.t.c.d.Manager] nextFirstSlotTime:[2018-03-22T17:57:20.001+08:00],now[2018-03-22T20:39:25.067+08:00]
20:39:25.019 INFO [o.t.c.s.WitnessService] ScheduledWitness[448d53b2df0cd78158f6f0aecdf60c1c10b15413],slot[1946]
20:39:25.021 INFO [o.t.c.s.WitnessService] It's not my turn
20:39:25.021 INFO [o.t.c.s.WitnessService] Sleep : 4979 ms,next time:2018-03-22T20:39:30.000+08:00
20:39:30.003 WARN [o.t.c.d.Manager] nextFirstSlotTime:[2018-03-22T17:57:20.001+08:00],now[2018-03-22T20:39:30.052+08:00]
20:39:30.003 INFO [o.t.c.s.WitnessService] ScheduledWitness[6c22c1af7bfbb2b0e07148ecba27b56f81a54fcf],slot[1947]
20:39:30.003 INFO [o.t.c.s.WitnessService] It's not my turn
20:39:30.003 INFO [o.t.c.s.WitnessService] Sleep : 4997 ms,next time:2018-03-22T20:39:35.000+08:00
20:39:33.803 INFO [o.t.c.n.n.NodeImpl] other peer is nil, please wait ... 
20:39:35.005 WARN [o.t.c.d.Manager] nextFirstSlotTime:[2018-03-22T17:57:20.001+08:00],now[2018-03-22T20:39:35.054+08:00]
20:39:35.005 INFO [o.t.c.s.WitnessService] ScheduledWitness[48e447ec869216de76cfeeadf0db37a3d1c8246d],slot[1948]
20:39:35.005 INFO [o.t.c.s.WitnessService] It's not my turn
20:39:35.005 INFO [o.t.c.s.WitnessService] Sleep : 4995 ms,next time:2018-03-22T20:39:40.000+08:00
20:39:40.005 WARN [o.t.c.d.Manager] nextFirstSlotTime:[2018-03-22T17:57:20.001+08:00],now[2018-03-22T20:39:40.055+08:00]
20:39:40.010 INFO [o.t.c.d.Manager] postponedTrxCount[0],TrxLeft[0]
20:39:40.022 INFO [o.t.c.d.DynamicPropertiesStore] update latest block header id = fd30a16160715f3ca1a5bcad18e81991cd6f47265a71815bd2c943129b258cd2
20:39:40.022 INFO [o.t.c.d.TronStoreWithRevoking] Address is [108, 97, 116, 101, 115, 116, 95, 98, 108, 111, 99, 107, 95, 104, 101, 97, 100, 101, 114, 95, 104, 97, 115, 104], BytesCapsule is org.tron.core.capsule.BytesCapsule@2ce0e954
20:39:40.023 INFO [o.t.c.d.DynamicPropertiesStore] update latest block header number = 140
20:39:40.024 INFO [o.t.c.d.TronStoreWithRevoking] Address is [108, 97, 116, 101, 115, 116, 95, 98, 108, 111, 99, 107, 95, 104, 101, 97, 100, 101, 114, 95, 110, 117, 109, 98, 101, 114], BytesCapsule is org.tron.core.capsule.BytesCapsule@83924ab
20:39:40.024 INFO [o.t.c.d.DynamicPropertiesStore] update latest block header timestamp = 1521722380001
20:39:40.024 INFO [o.t.c.d.TronStoreWithRevoking] Address is [108, 97, 116, 101, 115, 116, 95, 98, 108, 111, 99, 107, 95, 104, 101, 97, 100, 101, 114, 95, 116, 105, 109, 101, 115, 116, 97, 109, 112], BytesCapsule is org.tron.core.capsule.BytesCapsule@ca6a6f8
20:39:40.024 INFO [o.t.c.d.Manager] updateWitnessSchedule number:140,HeadBlockTimeStamp:1521722380001
20:39:40.025 WARN [o.t.c.u.RandomGenerator] index[-3] is out of range[0,3],skip
20:39:40.070 INFO [o.t.c.d.TronStoreWithRevoking] Address is [73, 72, -62, -24, -89, 86, -39, 67, 112, 55, -36, -40, -57, -32, -57, 61, 86, 12, -93, -115], AccountCapsule is account_name: "Sun"
address: "IH\302\350\247V\331Cp7\334\330\307\340\307=V\f\243\215"
balance: 9223372036854775387

20:39:40.081 INFO [o.t.c.d.TronStoreWithRevoking] Address is [41, -97, 61, -72, 10, 36, -78, 10, 37, 75, -119, -50, 99, -99, 89, 19, 47, 21, 127, 19], AccountCapsule is type: AssetIssue
address: ")\237=\270\n$\262\n%K\211\316c\235Y\023/\025\177\023"
balance: 420

20:39:40.082 INFO [o.t.c.d.TronStoreWithRevoking] Address is [76, 65, 84, 69, 83, 84, 95, 83, 79, 76, 73, 68, 73, 70, 73, 69, 68, 95, 66, 76, 79, 67, 75, 95, 78, 85, 77], BytesCapsule is org.tron.core.capsule.BytesCapsule@ec1439
20:39:40.083 INFO [o.t.c.d.Manager] there is account List size is 8
20:39:40.084 INFO [o.t.c.d.Manager] there is account ,account address is 448d53b2df0cd78158f6f0aecdf60c1c10b15413
20:39:40.084 INFO [o.t.c.d.Manager] there is account ,account address is 548794500882809695a8a687866e76d4271a146a
20:39:40.084 INFO [o.t.c.d.Manager] there is account ,account address is 48e447ec869216de76cfeeadf0db37a3d1c8246d
20:39:40.084 INFO [o.t.c.d.Manager] there is account ,account address is 55ddae14564f82d5b94c7a131b5fcfd31ad6515a
20:39:40.085 INFO [o.t.c.d.Manager] there is account ,account address is 6c22c1af7bfbb2b0e07148ecba27b56f81a54fcf
20:39:40.085 INFO [o.t.c.d.Manager] there is account ,account address is 299f3db80a24b20a254b89ce639d59132f157f13
20:39:40.085 INFO [o.t.c.d.Manager] there is account ,account address is abd4b9367799eaa3197fecb144eb71de1e049150
20:39:40.085 INFO [o.t.c.d.Manager] there is account ,account address is 4948c2e8a756d9437037dcd8c7e0c73d560ca38d
20:39:40.085 INFO [o.t.c.d.TronStoreWithRevoking] Address is [108, 34, -63, -81, 123, -5, -78, -80, -32, 113, 72, -20, -70, 39, -75, 111, -127, -91, 79, -49], WitnessCapsule is org.tron.core.capsule.WitnessCapsule@4cb4f7fb
20:39:40.086 INFO [o.t.c.d.TronStoreWithRevoking] Address is [41, -97, 61, -72, 10, 36, -78, 10, 37, 75, -119, -50, 99, -99, 89, 19, 47, 21, 127, 19], WitnessCapsule is org.tron.core.capsule.WitnessCapsule@7be2474a
20:39:40.086 INFO [o.t.c.d.TronStoreWithRevoking] Address is [72, -28, 71, -20, -122, -110, 22, -34, 118, -49, -18, -83, -16, -37, 55, -93, -47, -56, 36, 109], WitnessCapsule is org.tron.core.capsule.WitnessCapsule@3e375891
20:39:40.086 INFO [o.t.c.d.TronStoreWithRevoking] Address is [68, -115, 83, -78, -33, 12, -41, -127, 88, -10, -16, -82, -51, -10, 12, 28, 16, -79, 84, 19], WitnessCapsule is org.tron.core.capsule.WitnessCapsule@55d77b83
20:39:40.090 INFO [o.t.c.d.Manager] countWitnessMap size is 0
20:39:40.091 INFO [o.t.c.d.TronStoreWithRevoking] Address is [41, -97, 61, -72, 10, 36, -78, 10, 37, 75, -119, -50, 99, -99, 89, 19, 47, 21, 127, 19], WitnessCapsule is org.tron.core.capsule.WitnessCapsule@310dd876
20:39:40.092 INFO [o.t.c.d.TronStoreWithRevoking] Address is [72, -28, 71, -20, -122, -110, 22, -34, 118, -49, -18, -83, -16, -37, 55, -93, -47, -56, 36, 109], WitnessCapsule is org.tron.core.capsule.WitnessCapsule@151b42bc
20:39:40.092 INFO [o.t.c.d.TronStoreWithRevoking] Address is [108, 34, -63, -81, 123, -5, -78, -80, -32, 113, 72, -20, -70, 39, -75, 111, -127, -91, 79, -49], WitnessCapsule is org.tron.core.capsule.WitnessCapsule@2d0388aa
20:39:40.092 INFO [o.t.c.d.TronStoreWithRevoking] Address is [68, -115, 83, -78, -33, 12, -41, -127, 88, -10, -16, -82, -51, -10, 12, 28, 16, -79, 84, 19], WitnessCapsule is org.tron.core.capsule.WitnessCapsule@478a55e7
20:39:40.101 INFO [o.t.c.d.TronStoreWithRevoking] Address is [-3, 48, -95, 97, 96, 113, 95, 60, -95, -91, -68, -83, 24, -24, 25, -111, -51, 111, 71, 38, 90, 113, -127, 91, -46, -55, 67, 18, -101, 37, -116, -46], BlockCapsule is BlockCapsule{blockId=fd30a16160715f3ca1a5bcad18e81991cd6f47265a71815bd2c943129b258cd2, num=140, parentId=dadeff07c32d342b941cfa97ba82870958615e7ae73fffeaf3c6a334d81fe3bd, generatedByMyself=true}
20:39:40.102 INFO [o.t.c.d.Manager] save block: BlockCapsule{blockId=fd30a16160715f3ca1a5bcad18e81991cd6f47265a71815bd2c943129b258cd2, num=140, parentId=dadeff07c32d342b941cfa97ba82870958615e7ae73fffeaf3c6a334d81fe3bd, generatedByMyself=true}
20:39:40.102 INFO [o.t.c.s.WitnessService] Block is generated successfully, Its Id is fd30a16160715f3ca1a5bcad18e81991cd6f47265a71815bd2c943129b258cd2,number140 
20:39:40.102 INFO [o.t.c.n.n.NodeImpl] Ready to broadcast a block, Its hash is fd30a16160715f3ca1a5bcad18e81991cd6f47265a71815bd2c943129b258cd2
20:39:40.107 INFO [o.t.c.s.WitnessService] Produced
20:39:40.107 INFO [o.t.c.s.WitnessService] Sleep : 4893 ms,next time:2018-03-22T20:39:45.000+08:00
20:39:43.805 INFO [o.t.c.n.n.NodeImpl] other peer is nil, please wait ... 
20:39:45.002 WARN [o.t.c.d.Manager] nextFirstSlotTime:[2018-03-22T20:39:45.001+08:00],now[2018-03-22T20:39:45.052+08:00]
20:39:45.003 INFO [o.t.c.s.WitnessService] ScheduledWitness[48e447ec869216de76cfeeadf0db37a3d1c8246d],slot[1]
20:39:45.003 INFO [o.t.c.s.WitnessService] It's not my turn
20:39:45.003 INFO [o.t.c.s.WitnessService] Sleep : 4997 ms,next time:2018-03-22T20:39:50.000+08:00
20:39:50.002 WARN [o.t.c.d.Manager] nextFirstSlotTime:[2018-03-22T20:39:45.001+08:00],now[2018-03-22T20:39:50.052+08:00]
20:39:50.003 INFO [o.t.c.s.WitnessService] ScheduledWitness[6c22c1af7bfbb2b0e07148ecba27b56f81a54fcf],slot[2]
20:39:50.003 INFO [o.t.c.s.WitnessService] It's not my turn
20:39:50.003 INFO [o.t.c.s.WitnessService] Sleep : 4997 ms,next time:2018-03-22T20:39:55.000+08:00
  • In IntelliJ IDEA

Open the configuration panel:

In the Program arguments option, fill in --witness:

Then, run FullNode::main() again.

Quick Start

Read the Quick Start.

Advanced Configurations

Read the Advanced Configurations.

Developer Community

  • Discord Please join our Developer Discord
  • Gitter the core dev gitter

Links

Projects