Bitcoin Forum
April 20, 2026, 01:54:42 PM *
News: Latest Bitcoin Core release: 30.2 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2] 3 4 5 »  All
  Print  
Author Topic: [ANN] SOST — Native PoW Chain | ConvergenceX | CPU-Only | 8 GB | Gold Reserve  (Read 997 times)
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 08:56:46 AM
 #21

The block #28 error
("missing transactions[]") is a different issue from the
checkpoint gap — it means the block data was received
incomplete or corrupted during P2P transmission.

Your 300ms ping with packet loss to the seed is likely
contributing to this. The P2P protocol sends full block
data over TCP, and high latency + packet loss can cause
incomplete reads.

I have just pushed the checkpoint to block 3245 (only 5
blocks from the tip). Your node should now sync almost
entirely in fast-sync mode.

Please try one more time:

   git pull
   cd build
   cmake .. -DCMAKE_BUILD_TYPE=Release
   make -j$(nproc) sost-node

   rm -f chain.json
   rm -rf blocks utxo

   ./sost-node --genesis genesis_block.json \
     --connect seed.sostcore.com:19333 \
     --rpc-user youruser --rpc-pass yourpass \
     --profile mainnet

If the block #28 error still appears with the new build,
please share the full log — this would indicate a P2P
transport issue under high-latency conditions that I need
to investigate and harden specifically.
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 09:04:20 AM
 #22

Working on two additional fixes right now based on Rizki's report.

Fix 1 (immediate): In fast-sync mode, blocks under the
checkpoint will no longer require full transaction data
validation — only header + hash verification. This should
resolve the "missing transactions[]" error on high-latency
connections.

Fix 2 (robustness): Improving P2P transport to handle
high-latency connections with packet loss more gracefully
— retry logic, better error recovery.

Please hold on. I will post here as soon
as both fixes are live and you can try again.
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 09:10:38 AM
 #23

 I found the root cause of your block #28 error and have deployed
  two fixes:

  1. Header-only fast-sync: blocks under the trusted checkpoint
     range now accept even if the transaction data arrives
     incomplete. This handles the case where high-latency
     connections (your 300ms ping) cause partial block delivery.

  2. P2P resilience: socket timeouts increased to 30s, TCP_NODELAY
     enabled, read retries with 100ms backoff for EAGAIN/EWOULDBLOCK,
     and 256KB socket buffers. This should handle packet loss much
     better.

  The checkpoint is now at block 3245 (only 5 blocks from tip),
  so your entire sync should complete in trusted fast-sync mode.

  Please try again:

  git pull
  cd build
  cmake .. -DCMAKE_BUILD_TYPE=Release
  make -j$(nproc) sost-node

  rm -f chain.json

  ./sost-node --genesis genesis_block.json \
    --connect seed.sostcore.com:19333 \
    --rpc-user youruser --rpc-pass yourpass \
    --profile mainnet
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 11:32:52 AM
 #24

For anyone who wants to start mining SOST right now — here is the full process from scratch:

STEP 1 — Build from source

   git clone https://github.com/Neob1844/sost-core.git
   cd sost-core && mkdir build && cd build
   cmake .. -DCMAKE_BUILD_TYPE=Release
   make -j$(nproc)
   cp ../genesis_block.json .

Requirements: Ubuntu 22.04+ or WSL2, 8GB RAM minimum,
build-essential cmake libssl-dev libsecp256k1-dev

STEP 2 — Generate your RPC credentials

   NEW_USER=$(openssl rand -hex 10)
   NEW_PASS=$(openssl rand -hex 20)
   echo "RPC USER: $NEW_USER"
   echo "RPC PASS: $NEW_PASS"

Save these — you will need them for the node and miner.

STEP 3 — Generate a SOST wallet address

   https://sostcore.com/sost-wallet.html

Save your seed phrase. You will need the sost1... address for mining.

STEP 4 — Start the node and wait for full sync

   ./sost-node --genesis genesis_block.json \
     --connect seed.sostcore.com:19333 \
     --rpc-user YOUR_USER --rpc-pass YOUR_PASS \
     --profile mainnet

Wait until you see the current block height (~3245+).
Do NOT start the miner until sync is complete.

STEP 5 — Start mining

   ./sost-miner --address YOUR_SOST_ADDRESS \
     --rpc 127.0.0.1:18232 \
     --rpc-user YOUR_USER --rpc-pass YOUR_PASS \
     --blocks 999999 --profile mainnet

That's it. You should see blocks being mined immediately.

Explorer to verify your address:
https://sostcore.com/sost-explorer.html
https://sostprotocol.com/sost-explorer.html

18232 → RPC (used by the miner to communicate with the node)
19333 → P2P (used by nodes to communicate with each other)

Any issues? Please, post your full log here.

Rizki Maryanto
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 07, 2026, 12:46:43 PM
 #25

Hi Neob1844,

Thank you for the quick fixes. I have followed your instructions: performed a git pull (already up to date), re-compiled sost-node, and completely purged ~/.sost, chain.json, blocks/, and utxo/.

However, the node is still stuck at height 2501. Even with a completely empty data directory, it immediately attempts to request blocks starting from 2501 instead of 3245 or syncing from genesis.

Here is my latest log:

Bash

root@srv1561018:~/sost-core/build# cp ../genesis_block.json .
root@srv1561018:~/sost-core/build# nohup ./sost-node --genesis genesis_block.json \
>   --connect seed.sostcore.com:19333 \
>   --rpc-user rizki --rpc-pass sost_jaya_selalu \
>   --profile mainnet > node.log 2>&1 &
[1] 21695
root@srv1561018:~/sost-core/build# tail -n 20 node.log
[ORPHAN] Block h=2847 stored (parent 0da1666478f19ebe unknown). 8 orphans total.
[FORK] Block h=2848 bid=b8072d5d5bf478b6 does not extend tip (our height=2501).
[SYNC] Block #2848 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=70/100]
[FORK] Block h=2849 bid=f6ea6758586df89e does not extend tip (our height=2501).
[ORPHAN] Block h=2849 stored (parent b8072d5d5bf478b6 unknown). 9 orphans total.
[FORK] Block h=2850 bid=30122ce5ba3d4aac does not extend tip (our height=2501).
[SYNC] Block #2850 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=80/100]
[FORK] Block h=2851 bid=48f548c1dd526453 does not extend tip (our height=2501).
[ORPHAN] Block h=2851 stored (parent 30122ce5ba3d4aac unknown). 10 orphans total.
[FORK] Block h=2852 bid=44f8098489726ebb does not extend tip (our height=2501).
[SYNC] Block #2852 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=90/100]
[FORK] Block h=2853 bid=a0f141e4594ba906 does not extend tip (our height=2501).
[ORPHAN] Block h=2853 stored (parent 44f8098489726ebb unknown). 11 orphans total.
[FORK] Block h=2854 bid=d9c415f92a56e30c does not extend tip (our height=2501).
[SYNC] Block #2854 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] BANNED seed.sostcore.com:19333: invalid block (24h)
[P2P] Peer disconnected: seed.sostcore.com:19333
root@srv1561018:~/sost-core/build# pkill -9 sost-node
root@srv1561018:~/sost-core/build# rm -rf ~/.sost
[1]+  Killed                  nohup ./sost-node --genesis genesis_block.json --connect seed.sostcore.com:19333 --rpc-user rizki --rpc-pass sost_jaya_selalu --profile mainnet > node.log 2>&1
root@srv1561018:~/sost-core/build# rm -f chain.json
root@srv1561018:~/sost-core/build# rm -rf blocks utxo
root@srv1561018:~/sost-core/build# cd ~/sost-core
root@srv1561018:~/sost-core# git pull
Already up to date.
root@srv1561018:~/sost-core# cd build
root@srv1561018:~/sost-core/build# cmake .. -DCMAKE_BUILD_TYPE=Release
nproc) sost-node-- Configuring done (0.0s)
-- Generating done (0.1s)
-- Build files have been written to: /root/sost-core/build
root@srv1561018:~/sost-core/build# make -j$(nproc) sost-node
[ 93%] Built target sost-core
[100%] Built target sost-node
root@srv1561018:~/sost-core/build# nohup ./sost-node --genesis genesis_block.json \
>   --connect seed.sostcore.com:19333 \
>   --rpc-user rizki --rpc-pass sost_jaya_selalu \
>   --profile mainnet > node.log 2>&1 &
[1] 21754
root@srv1561018:~/sost-core/build# tail -n 20 node.log
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3273
root@srv1561018:~/sost-core/build#
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 01:09:14 PM
 #26

  Hi Rizki,

  I found the issue. Your build cache is stale — make did not
  recompile the node with the latest fixes because the .o files
  were already cached.

  IMPORTANT: Please run a CLEAN rebuild:

     cd ~/sost-core/build
     MAKE CLEAN           <-- THIS IS THE KEY STEP
     cmake .. -DCMAKE_BUILD_TYPE=Release
     make -j$(nproc) sost-node

     rm -f chain.json
     rm -rf blocks utxo ~/.sost

     ./sost-node --genesis genesis_block.json \
       --connect seed.sostcore.com:19333 \
       --rpc-user youruser --rpc-pass yourpass \
       --profile mainnet

  WITHOUT "make clean", make thinks nothing changed and skips
  recompilation. The P2P and fast-sync fixes are in the source
  code on GitHub right now, but they were NOT compiled into
  your current binary.

  Let me know if this resolves it.

And to everyone testing — I want to say this clearly:

SOST is a genuinely different protocol. Not a fork, not a
parameter tweak. That means the edge cases are real and the
fixes matter. Each of these bugs, small as they look in a log,
can silently break the sync path for every future node.

There is no middle ground here: either the bootstrap works
reliably for everyone, everywhere, or it doesn't ship.

Your reports are not just helpful — they are the reason this
protocol has a chance of being what it is designed to be.
Rizki Maryanto
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 07, 2026, 01:18:10 PM
 #27

root@srv1495092:~/sost-core/build# cp ../genesis_block.json .
root@srv1495092:~/sost-core/build#
root@srv1495092:~/sost-core/build# NEW_USER=$(openssl rand -hex 10)
 rand -hex 20)
echo "RPC USER: $NEW_USER"
echo "RPC PASS: $NEW_PASS"root@srv1495092:~/sost-core/build# NEW_PASS=$(openssl rand -hex 20)
root@srv1495092:~/sost-core/build# echo "RPC USER: $NEW_USER"
RPC USER: 1ebb39d1e42cb5c17dae
root@srv1495092:~/sost-core/build# echo "RPC PASS: $NEW_PASS"
RPC PASS: 6f13511b879839471bbbcc1b79d5869577d63dcc
root@srv1495092:~/sost-core/build# nohup ./sost-node --genesis genesis_block.json \
>   --connect seed.sostcore.com:19333 \
>   --rpc-user 1ebb39d1e42cb5c17dae --rpc-pass 6f13511b879839471bbbcc1b79d5869577d63dcc \
>   --profile mainnet > node.log 2>&1 &
[1] 88120
root@srv1495092:~/sost-core/build# tail -f node.log
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3276
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 01:23:25 PM
 #28

I may be wrong, but looking at your log it seems you skipped
the CLEAN rebuild step. Your log shows you went straight to
starting the node without recompiling.

Please do this EXACTLY in order:

1. STOP the node first:
   pkill -9 sost-node

2. CLEAN rebuild:
   cd ~/sost-core/build
   make clean
   cmake .. -DCMAKE_BUILD_TYPE=Release
   make -j$(nproc) sost-node
   cp ../genesis_block.json .

3. DELETE all old data:
   rm -f chain.json
   rm -rf blocks utxo ~/.sost

4. THEN start the node:
   ./sost-node --genesis genesis_block.json \
     --connect seed.sostcore.com:19333 \
     --rpc-user YOUR_USER --rpc-pass YOUR_PASS \
     --profile mainnet

The critical step is "make clean" in step 2. Without it,
your binary does not contain today's fixes and the sync
loop will repeat forever.



Rizki Maryanto
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 07, 2026, 01:46:02 PM
 #29

Hi Neob1844,

Good news: The make clean worked! My node successfully synced from the beginning and accepted blocks up to 2500.

The Problem: Immediately after block 2500, the node enters an infinite request loop for the next batch:
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280

The seed server acknowledges the batch is done up to 2500, but it seems it's not delivering the data for 2501+. Since I am now on a clean build with your latest P2P fixes, and my node is clearly active and healthy up to 2500, it seems the seed might be failing to serve the post-2500 range to peers currently at that height.

Here is the log showing the successful sync to 2500 and the subsequent stall:

[BLOCK] fast-sync height=2490 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2490 accepted: eb7cd5c99fa08a1b (txs=1, fees=0, UTXOs=7452, chainwork=0x4a8315)
[P2P] Broadcasting block #2490 to 1 peers
[SYNC] Received block #2490 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2491: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2491 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2491 accepted: 054b397ef9809295 (txs=1, fees=0, UTXOs=7455, chainwork=0x4a8c7c)
[P2P] Broadcasting block #2491 to 1 peers
[SYNC] Received block #2491 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2492: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2492 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2492 accepted: 1244d86dd0f7c15e (txs=1, fees=0, UTXOs=7458, chainwork=0x4a953d)
[P2P] Broadcasting block #2492 to 1 peers
[SYNC] Received block #2492 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2493: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2493 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2493 accepted: 5d8e7c1d72b00f9c (txs=1, fees=0, UTXOs=7461, chainwork=0x4a9dfa)
[P2P] Broadcasting block #2493 to 1 peers
[SYNC] Received block #2493 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2494: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2494 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2494 accepted: ff72d95a243ed861 (txs=1, fees=0, UTXOs=7464, chainwork=0x4aa632)
[P2P] Broadcasting block #2494 to 1 peers
[SYNC] Received block #2494 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2495: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2495 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2495 accepted: edaf1964fabd02d7 (txs=1, fees=0, UTXOs=7467, chainwork=0x4aaea2)
[P2P] Broadcasting block #2495 to 1 peers
[SYNC] Received block #2495 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2496: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2496 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2496 accepted: 55c41a17c3023ec6 (txs=1, fees=0, UTXOs=7470, chainwork=0x4ab715)
[P2P] Broadcasting block #2496 to 1 peers
[SYNC] Received block #2496 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2497: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2497 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2497 accepted: ea5d2624778edbff (txs=1, fees=0, UTXOs=7473, chainwork=0x4abfab)
[P2P] Broadcasting block #2497 to 1 peers
[SYNC] Received block #2497 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2498: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2498 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2498 accepted: 3924f2f97dae55d9 (txs=1, fees=0, UTXOs=7476, chainwork=0x4ac7bd)
[P2P] Broadcasting block #2498 to 1 peers
[SYNC] Received block #2498 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2499: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2499 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2499 accepted: 532853b3e48fe051 (txs=1, fees=0, UTXOs=7479, chainwork=0x4acff3)
[P2P] Broadcasting block #2499 to 1 peers
[SYNC] Received block #2499 from seed.sostcore.com:19333
[BLOCK] fast-sync height=2500: profile_index missing, trusted block (assuming B0)
[BLOCK] fast-sync height=2500 (trusted: checkpoint/assumevalid, CX proof skipped)
[BLOCK] Height 2500 accepted: 55d1314469265216 (txs=1, fees=0, UTXOs=7482, chainwork=0x4ad860)
[P2P] Broadcasting block #2500 to 1 peers
[SYNC] Received block #2500 from seed.sostcore.com:19333
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3280
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 01:48:46 PM
 #30

Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 01:55:24 PM
 #31

Please hold on — fixes deploying now. Back shortly.
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 02:03:57 PM
 #32

I found the actual root cause of the 2501 stall.

  The seed node was sending blocks using PLAINTEXT framing
  into your ENCRYPTED connection (X25519+ChaCha20). Your node
  received the raw bytes but couldn't decrypt them, so every
  block after 2500 was silently dropped.

  This explains why sync worked perfectly up to 2500 (first
  batch) but then entered an infinite request loop — the seed
  kept sending blocks, your node kept not receiving them.

  The fix is now live on GitHub and the seed has been
  recompiled and restarted.

  Please try again:

     cd ~/sost-core
     git pull
     cd build
     make clean
     cmake .. -DCMAKE_BUILD_TYPE=Release
     make -j$(nproc) sost-node
     cp ../genesis_block.json .

     rm -f chain.json
     rm -rf ~/.sost

     ./sost-node --genesis genesis_block.json \
       --connect seed.sostcore.com:19333 \
       --rpc-user YOUR_USER --rpc-pass YOUR_PASS \
       --profile mainnet

  You should now sync the full chain without any stall.
  Let me know the result.
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 03:00:37 PM
 #33

Hi all,

Quick technical update.

I believe I have now identified the most likely root cause of the latest sync stall, but I do not want to claim this is fully resolved until it is confirmed by external testers.

The issue appears to have been a P2P transport / framing mismatch on the seed side: after the initial trusted sync range, some blocks were being sent in a way that did not match the connection mode expected by the receiving node. In practice, this could cause blocks to be silently dropped or the sync process to enter a request loop, even though the node itself remained running.

This would explain the pattern some testers reported:

sync progressing correctly through the trusted range,
then stalling or looping on later batches,
or failing differently depending on latency, packet loss, and connection state.

I have now deployed a fix for that path and restarted the seed with the updated build.

However, I want to be precise and honest here:

I am not marking this issue as fully solved yet.
At this point, the correct status is:

candidate fix deployed — awaiting independent confirmation

So if you are testing, please try again from a fully clean state:

cd ~/sost-core
git pull
cd build
make clean
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc) sost-node
cp ../genesis_block.json .

rm -f chain.json
rm -rf blocks utxo ~/.sost

./sost-node --genesis genesis_block.json \
  --connect seed.sostcore.com:19333 \
  --rpc-user YOUR_USER --rpc-pass YOUR_PASS \
  --profile mainnet

Please wait for full sync before starting the miner.

If this now works from height 0 to tip on external machines, then I will consider this specific bootstrap issue materially resolved. If it still fails, please post the full log again and I will continue investigating immediately.

Thank you again to everyone testing.
Rizki Maryanto
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 07, 2026, 03:20:52 PM
 #34

Crucial Update: Tested on 4 Different Servers

Hi Neob1844,

I want to emphasize that I have now tested this on 4 entirely different servers (fresh VPS instances).

On every single one of them:

I performed a git pull and a make clean rebuild.

I started from a completely fresh data state.

Every server successfully synced from 0 to 2500 without a single error.

Every server is now hard-stuck at 2501, looping on the same request:
Requesting blocks 2501..3288

This confirms that the issue is not related to a specific machine, OS, or network provider. There is a consistent protocol or handshake failure that occurs exactly at the 2501 boundary across all external nodes.

Please check if there is a specific hardcoded rule or a mismatch in the "Encryption vs Plaintext" logic that specifically kicks in after the 2500-block batch is completed.
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 03:40:42 PM
 #35

First of all, let me give a complete picture of where things stand.

  1. The seed node was sending blocks using PLAINTEXT framing
     inside ENCRYPTED P2P connections. After the initial batch
     (blocks 1-2500), the connection switches to encrypted mode,
     but the block-sending function was not aware of this. It kept
     pushing raw bytes that the receiving node could not decrypt.

  2. I rewrote p2p_send_block to be encryption-aware — it now
     checks whether the connection is encrypted and uses the
     correct framing path (commit 774cd83).

  3. I wrote a sync simulation script that connects to the seed
     and requests all blocks from height 0. The result:
     - 3288 blocks received in 2.7 seconds
     - Block #2501 received correctly
     - All blocks through #3288 received correctly
     However, this test ran in PLAINTEXT mode, not encrypted.

  4. I have just restarted the seed node to make absolutely sure
     it is running the latest binary with the encryption fix.

  Please try ONE MORE TIME on any of your servers:

     pkill -9 sost-node
     rm -f chain.json
     rm -rf blocks utxo ~/.sost

     ./sost-node --genesis genesis_block.json \
       --connect seed.sostcore.com:19333 \
       --rpc-user YOUR_USER --rpc-pass YOUR_PASS \
       --profile mainnet

  If it still stalls at 2501, please also try with encryption
  explicitly disabled:

     ./sost-node --genesis genesis_block.json \
       --connect seed.sostcore.com:19333 \
       --rpc-user YOUR_USER --rpc-pass YOUR_PASS \
       --profile mainnet --p2p-enc off

  If --p2p-enc off syncs fully but the default mode does not,
  that confirms the encrypted path still has a problem, and I
  will know exactly where to look.

  If BOTH modes fail, the issue is deeper than encryption framing
  and I will conduct a full line-by-line audit of the entire P2P
  sync pipeline — every parameter, every state transition, every
  edge case. That may take some time, but I will not stop until
  external nodes can sync reliably from zero to tip.

  This is not a project where I will paper over a bootstrap
  failure. If the sync does not work for real people on real
  machines, nothing else matters. Your 4-server
  test is the most valuable debugging data I have received so far.
Rizki Maryanto
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 07, 2026, 03:55:45 PM
 #36

Hi Neob1844,

Here are the final results from my 4-server test:

DEFAULT MODE (Encryption On): Still STUCK at 2501 in an infinite loop. Your encryption fix (commit 774cd83) did not resolve the issue for external nodes.

ENCRYPTION OFF (--p2p-enc off): This successfully bypassed the 2501 stall! The node synced rapidly from 2501 to 3226.

THE NEW WALL (3226): At height 3226, the sync failed again with massive validation errors:

Block #3228 failed validation — stopping sync

Block does not extend tip (our height=3226)

The node eventually BANNED the seed IP for "invalid blocks".

Conclusion:

Your P2P Encryption logic is definitely still failing to frame/decrypt batches correctly after the first 2500 blocks.

Even in plaintext, there is a Consensus/Validation mismatch starting at height 3226. It looks like the "Tip" on the seed node is following a different rule than the current binary build.

Please investigate the transition at 2501 (for encryption) and 3226 (for consensus).
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 07, 2026, 05:00:46 PM
Last edit: April 07, 2026, 10:06:30 PM by Neob1844
 #37

 Quick status update.

I am currently running an isolated sync test from my own machine,
simulating what a new peer does when connecting to the seed from zero.

So far, the sync reaches block ~2392 successfully. At block #2393,
the peer accepts the block in trusted header-only mode
(`tx data missing — header-only accept`) and the connection then
drops immediately afterward.

This strongly suggests that the remaining issue is still in the
bootstrap / GETB delivery path — most likely at the transport,
framing, or block-serving layer — rather than in the mined chain
itself.

At this point, I do not want to overstate the diagnosis:
the current evidence points to incomplete or inconsistent block
delivery during sync, but I am still auditing the full path before
claiming the exact root cause.

I am now reviewing the block send/receive pipeline around that
boundary to determine why a trusted block can arrive without full
transaction payload and why the peer disconnects immediately after.

I will post again when I have either:
1. a confirmed root cause, or
2. a fix ready for external retesting.
Rizki Maryanto
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 08, 2026, 05:09:59 AM
 #38

ok, i`ll wait for further news. i hope it goes smoothly.
Neob1844 (OP)
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
April 08, 2026, 08:01:31 AM
Last edit: April 08, 2026, 10:16:56 AM by Neob1844
 #39

Quick status update.

An isolated sync test has been executed from a clean external machine, simulating exactly how a new peer connects to the seed from scratch.

Current verified status:

* full bootstrap sync from height 0 to tip completes successfully in plaintext P2P mode
* the node reaches height 3300 and completes synchronization normally
* the previous bootstrap failure around height 3226 is resolved on the practical sync path
* the remaining unresolved issue is isolated to the encrypted P2P transport path, which still stalls after the first trusted batch

Transport status:

The default P2P transport has been temporarily switched to plaintext while the encrypted X25519+ChaCha20 sync path remains under investigation.

This decision was made because a broken default transport mode is operationally worse than a stable plaintext bootstrap path.

What this change does NOT affect:

* consensus rules
* block validity
* chain selection
* PoW verification
* cASERT difficulty validation
* wallet key custody

Private keys do not propagate over the P2P network. Transactions remain locally signed. The temporary difference is at the transport/privacy layer, not at the consensus layer.

What this change does affect:

* transport-level privacy only

A network observer may have greater visibility into block and transaction relay patterns while plaintext transport is the active recommended mode. This is a transport-layer tradeoff, not a chain-integrity issue.

Historical context:

Bitcoin operated for most of its existence without mandatory encrypted P2P transport, at least until 2023. Encrypted transport is a network-layer hardening feature, not a prerequisite for basic blockchain validity or successful initial synchronization.

Current operational conclusion:

Reliable bootstrap from zero to tip takes priority over optional encrypted transport during the present pre-market stage.

Recommended sync instructions:

```bash
git pull origin main
cd build
make clean
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc) sost-node
cp ../genesis_block.json .

pkill -9 sost-node || true
rm -f chain.json
rm -rf blocks utxo ~/.sost

./sost-node --genesis genesis_block.json \
  --connect seed.sostcore.com:19333 \
  --rpc-user YOUR_USER --rpc-pass YOUR_PASS \
  --profile mainnet \
  --p2p-enc off
```

Plaintext P2P transport is currently the recommended and verified bootstrap path. The explicit `--p2p-enc off` flag is included here for clarity and to avoid ambiguity when testing with older binaries.

Encrypted P2P transport will be re-enabled only after the sync path has been fully audited and externally re-verified under clean bootstrap conditions.


Operational note:

Founder mining is currently paused in order to acknowledge the external testing effort that helped identify synchronization and related issues, and also to facilitate ConvergenceX testing under cleaner network conditions.

The chain is currently approximately 110 blocks behind the expected height at the time of writing this post (block 3,300), as the developer’s miner has been paused during this diagnostic and troubleshooting phase. Mining is now ready to resume. Under the active cASERT V2 parameters — 24-hour half-life and a 12.5% per-block adjustment cap — this level of lag should not take excessive time to normalize, and the network is expected to converge progressively back toward alignment between expected block production and emitted blocks.

The current height can be checked on the official explorers: https://sostprotocol.com/sost-explorer.html and https://sostcore.com/sost-explorer.html

Rizki Maryanto
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 08, 2026, 03:08:50 PM
 #40

Hi Neob1844,

Encryption fix verified! Using --p2p-enc off works to establish the connection, but the Sync Logic is still broken.

My node is at height 2501. When it requests the next batch, your seed node is sending blocks starting from height 2858. There is a massive gap of 356 blocks (2502 to 2857) that the seed is not sending.

Because the blocks don't connect to my current tip (2501), my node identifies them as invalid forks and has BANNED your seed IP again:
[FORK] Block h=2858 ... does not extend tip (our height=2501)
[P2P] BANNED seed.sostcore.com:19333: invalid block (24h)

The seed is failing to deliver a continuous chain. Please check why the batching logic is skipping the range between 2502 and 2857.



[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[P2PDBG] DONE received from seed.sostcore.com:19333: our_height=2500, their_height=3300, blocks_size=2501
[SYNC] Batch done from seed.sostcore.com:19333. Requesting blocks 2501..3300
[FORK] Block h=2858 bid=13d8c40cd73a34ad does not extend tip (our height=2501).
[ORPHAN] Block h=2858 stored (parent eedcd5f83f338827 unknown). 1 orphans total.
[FORK] Block h=2859 bid=e1277f0b58070e45 does not extend tip (our height=2501).
[SYNC] Block #2859 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=10/100]
[FORK] Block h=2860 bid=0da52aef078471ec does not extend tip (our height=2501).
[ORPHAN] Block h=2860 stored (parent e1277f0b58070e45 unknown). 2 orphans total.
[FORK] Block h=2861 bid=813592591d527560 does not extend tip (our height=2501).
[SYNC] Block #2861 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=20/100]
[FORK] Block h=2862 bid=111bec12af8a8d5c does not extend tip (our height=2501).
[ORPHAN] Block h=2862 stored (parent 813592591d527560 unknown). 3 orphans total.
[FORK] Block h=2863 bid=ceab02a6e8feb16e does not extend tip (our height=2501).
[SYNC] Block #2863 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=30/100]
[FORK] Block h=2864 bid=653b1452772f2d50 does not extend tip (our height=2501).
[ORPHAN] Block h=2864 stored (parent ceab02a6e8feb16e unknown). 4 orphans total.
[FORK] Block h=2865 bid=bfaf056b01121306 does not extend tip (our height=2501).
[SYNC] Block #2865 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=40/100]
[FORK] Block h=2866 bid=29392a20a5fb73df does not extend tip (our height=2501).
[ORPHAN] Block h=2866 stored (parent bfaf056b01121306 unknown). 5 orphans total.
[FORK] Block h=2867 bid=0082ab3bd73a665e does not extend tip (our height=2501).
[SYNC] Block #2867 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=50/100]
[FORK] Block h=2868 bid=7a6606c459f8c124 does not extend tip (our height=2501).
[ORPHAN] Block h=2868 stored (parent 0082ab3bd73a665e unknown). 6 orphans total.
[FORK] Block h=2869 bid=e237934846232528 does not extend tip (our height=2501).
[SYNC] Block #2869 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=60/100]
[FORK] Block h=2870 bid=a88989e17d4372ac does not extend tip (our height=2501).
[ORPHAN] Block h=2870 stored (parent e237934846232528 unknown). 7 orphans total.
[FORK] Block h=2871 bid=72794888c088731a does not extend tip (our height=2501).
[SYNC] Block #2871 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=70/100]
[FORK] Block h=2872 bid=2a636266266136bd does not extend tip (our height=2501).
[ORPHAN] Block h=2872 stored (parent 72794888c088731a unknown). 8 orphans total.
[FORK] Block h=2873 bid=e17130e21d38c802 does not extend tip (our height=2501).
[SYNC] Block #2873 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=80/100]
[FORK] Block h=2874 bid=f39e29a11aa94d02 does not extend tip (our height=2501).
[ORPHAN] Block h=2874 stored (parent e17130e21d38c802 unknown). 9 orphans total.
[FORK] Block h=2875 bid=404e98061801c4fe does not extend tip (our height=2501).
[SYNC] Block #2875 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] Misbehavior +10 (invalid block) from seed.sostcore.com:19333 [score=90/100]
[FORK] Block h=2876 bid=ae18a0b4850d6f08 does not extend tip (our height=2501).
[ORPHAN] Block h=2876 stored (parent 404e98061801c4fe unknown). 10 orphans total.
[FORK] Block h=2877 bid=22364bad803a38dc does not extend tip (our height=2501).
[SYNC] Block #2877 from seed.sostcore.com:19333 failed validation — stopping sync
[P2P] BANNED seed.sostcore.com:19333: invalid block (24h)
[P2P] Peer disconnected: seed.sostcore.com:19333
Pages: « 1 [2] 3 4 5 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!