On the 6th June 2018 at around Midday UK time I resolved my first block as a brand new #Witness for the Steem blockchain. After one year and a few months blogging, reading and generally finding my way on this cryptocurrency backed social website I decided six months ago to commit myself to more then just reading and commenting on posts - by supporting this platform running a server that would contribute to processing every post, upvote, comment and resteem and help keep our favourite social blogging website running.
I worked really hard at researching, following guides, finding a suitable server capable of the heavy demands this rapidly growing blockchain based blogging site needs.
I have to confess
After all the testing, preparation and double checking I was sure I had everything on the server running smoothly - so on 28th May 2018 I announced my Intent to be a #Witness and started to gather votes. The support I received from the entire community of Steemit was overwhelming, so many of you without question gave me your #Witness vote without question even though I had not resolved a single block - and you could not even know if I ever would.
Starting out as a #Witness now is really so hard - you will not get the chance of even receiving a block to resolve until you have enough votes carrying enough Steem Power to move you up the rank list - https://steemian.info/witnesses this website developed by the #Witness @drakos clearly shows you all the Witnesses and their active ranks - the higher up the list you are the more frequently you will receive a block. I was sure after all the testing, preparation, reading and double checking my server was ready and running smoothly - but on Saturday Evening 2nd June 2018 I missed my very first block.
It is only in your darkest moments you will find the brightest light
I won't lie, that hit me hard. I was disappointed in myself and felt I had let every single person down who believed in me and gave me a Witness vote. I had to dig deep and accept after working on this for so long alone, I needed someone with experience to find out where I went wrong. When I prepared my #Witness application post, I read many from others - and I remembered in @enginewitty application he stated that #thealliance #Witness @jatinhota had helped him set up his server. I respectfully asked him for a little guidance and he was quick to respond, @jatinhota gave me a great deal of his time during Sunday to guide me and for that I am truly thankful - My own witness vote includes every one of #thealliance Witnesses - @enginewitty, @jatinhota, @guiltyparties, @sircork and @thekitchenfairy - they are all very active on Steemit and also always very eager to support and help anyone.
If at first you do not succeed, try and try again
Having a problem but with no idea what was wrong, I needed to find common ground. There are two main methods of running a Witness server, I had manually complied the Steemd process from GitHub but to gain support I would need to use the alternative Steem Docker approach - so from 6am Sunday Morning I wiped, reinstalled and updated the dependancies on my server and installed from clean my #Witness server using the Steem Docker method. After waiting for the blockchain file to download, I was finally ready to set my server off replaying it - but when I did an error I had seen before appeared
1986712ms th_a main.cpp:133 main ] Error parsing logging config from config file /steem/witness_node_data_dir/config.ini, using default config
This error message bothered me, to me reading that says the config.ini file I had carefully set up with my own Witness account name and public posting key - would not be used and a default instead. In my own twisted logic that would mean the process could not then resolve a block.
I had already found how to solve this problem, the config.ini has many nodes listed so if one can not be reached the next is chosen - listing only one node instead of many fixed this error - so to my warped logic it made the server work.
Who is more foolish - the fool or the fool that follows him
@jatinhota told me straight the config.ini needs multiple seeds so if one is down another can be used, and it is essential to check the ping's of those seeds and use only the one's that have the lowest latency (fastest response compared to my server location) because latency can cause missed blocks as well. Despite this I let the replay run and at the end my log's showed....nothing. I asked and this was definately wrong, the logs need to show transactions being processed for the Witness server to be working - after 24 hours and still no log activity I bowed to greater knowledge.
Missing a second block would be a total failure, so I reached the point I had two options - change my server host to one that a large portion of the #Witness community uses - or try changing my config.ini to include multiple nodes. I chose the latter expecting my next block opportunity to be days away still - if this failed I could still change hosting and get up and running again. With multiple nodes I got the dreaded error starting replay - but let it run. When it completed checking logs finally I received
231201ms th_a application.cpp:514 handle_block ] Got 96 transactions on block 23125052 by good-karma -- latency: 201 ms
234481ms th_a application.cpp:514 handle_block ] Got 53 transactions on block 23125053 by smooth.witness -- latency: 481 ms
237207ms th_a application.cpp:514 handle_block ] Got 55 transactions on block 23125054 by ausbitbank -- latency: 207 ms
I double checked with @jatinhota and this was exactly how my logs should look, my #Witness server was working correctly and just a few hours after I resolved my first official block and became an active Steem Witness.
And the moral of this story is
If it ain't broke don't try and fix it. I found no reference to this error anywhere in my research, when I mentioned in the Witness steemit.chat it is apparently a benign legacy message to be ignored - so if anything I hope this helps someone else in future, ignore the error and make sure your Witness config.ini has many seed nodes listed - even better only use the nodes that have the least latency when you ping them.
Future objectives as a Witness
Getting this far has been a long hard process, every single person that has voted for me as #Witness supported me without question and I strongly believe that as part of this I should give something back. I have been taking note of every vote I received, and will look to give something back to every account that has helped me. I vote for the full 30 Witnesses I can, and it is important we all give every vote we can to every Witness we see as helping support the Steem Blockchain. By rough calculation I would say every #Witness from 80 upwards is paying money to run a server that supports this blockchain - the server specifications are now so high to reliably run a Witness and the rewards when you do resolve a block few and far between. I am constantly looking now at the Witnesses I can vote for, and will be changing to support those with the best intention for this platform and the new entries starting out that could well be the future of all our stability in posting here.
Some of my previous posts you might have missed
My Happy Place with @c0ff33a
The C0ff33 Vlog 26th May 2018
Sublime Sunday by @c0ff33a ☕️
Kind thanks to @enginewitty for employing his Ninja graphic design skills and producing this 🔥 banner
If you enjoyed my post don’t forget to leave an Upvote, feel free to comment on what you liked or where I can do better even. Follow @c0ff33a for regular and varied posts, photography, my weekly VLOG, posts on coffee roasting and brewing - just follow and see.
For the simplest way to upvote and promote your work, log into SmartSteem it’s the smartest way to get your work noticed.
Join Steemfollower and get upvotes in return for upvotes. It’s free, simple, easy to find new content to upvote and get your own content seen by more users and possibly upvoted.
New @brotherhood upvote service, send between 0.1 and 0.3 SBD to brotherhood with your post link in the memo for an profitable upvote.
All photos are my own, taken with my iPhone. All my steemit posted pictures can be freely used by other Steemit users in their own blog posts - all I ask is that you follow me and credit @c0ff33a linking to my post you took it from. You can also follow me on Twitter
The greatest challenge we face on Steemit is getting our posts seen, I have always believed the simplest and best value way of doing this is by commenting on the blog posts of others, the more you engage people and interact with them the greater the chance they will visit your own blog and return to the favour.
!steemitworldmap 53.766547 lat -1.801500 long Bradford, West Yorkshire, United Kingdom. d3scr
This awesome animated Banner has been kindly been created by the wonderful @snook
Don’t forget to vote for Witnesses https://steemit.com/~witnesses
And you can vote for me c0ff33a