Skip to content

Caplin: long living rwtx in Antiquary #20664

@AskAlexSharov

Description

@AskAlexSharov

gnosis, 3.4:

[INFO] [04-19|03:29:58.288] [dbg.db.caplin] long living resources    list="36876(27m23.759286687s): [kv_mdbx.go:652 kv_mdbx.go:623 antiquary.go:154 run.go:470]"

i don't know if it's ok or not.

18G	/erigon-data/caplin/indexing
./build/bin/mdbx_stat -efa  /erigon-data/caplin/indexing | awk '
    BEGIN { pagesize = 4096 }
    /^  Pagesize:/ { pagesize = $2 }
    /^Status of/ { table = $3 }
    /Branch pages:/ { branch = $3 }
    /Leaf pages:/ { leaf = $3 }
    /Overflow pages:/ { overflow = $3 }
    /Entries:/ {
      table_pages = branch + leaf + overflow
      size_gb = (table_pages * pagesize) / (1024^3)
      printf "%-30s %.2fG\n", table, size_gb
    }
    /Reclaimable:/ {
      table = "Reclaimable"
      table_pages = $2
      size_gb = (table_pages * pagesize) / (1024^3)
      printf "%-30s %.2fG\n", table, size_gb
    }
  ' | grep -v '0.0'
   open-MADV_DONTNEED 4718592..4718592
   readahead OFF 0..4718592
BeaconBlock                    10.11G
BeaconBlockHeaders             0.87G
BlockRootToBlockHash           0.25G
BlockRootToBlockNumber         0.15G
BlockRootToParentRoot          0.25G
BlockRootToSlot                0.15G
BlockRootToStateRoot           0.25G
CanonicalBlockRoots            0.13G
ParentRootToBlockRoots         0.25G
StateRootToBlockRoot           0.25G

Goroutines:


1 @ 0x4bbacb 0x1450e46 0x14588b1 0x1458844 0x14633a6 0x1b5dafe 0x1b5da4a 0x1fb1f06 0x4c7901
#	0x1450e45	github.com/erigontech/mdbx-go/mdbx._Cfunc_mdbxgo_put2+0x45				_cgo_gotypes.go:1410
#	0x14588b0	github.com/erigontech/mdbx-go/mdbx.(*Txn).Put.func1+0xd0				github.com/erigontech/mdbx-go@v0.39.17/mdbx/txn.go:678
#	0x1458843	github.com/erigontech/mdbx-go/mdbx.(*Txn).Put+0x63					github.com/erigontech/mdbx-go@v0.39.17/mdbx/txn.go:678
#	0x14633a5	github.com/erigontech/erigon/db/kv/mdbx.(*MdbxTx).Put+0xa5				github.com/erigontech/erigon/db/kv/mdbx/kv_mdbx.go:1100
#	0x1b5dafd	github.com/erigontech/erigon/cl/persistence/beacon_indicies.WriteParentBlockRoot+0x8dd	github.com/erigontech/erigon/cl/persistence/beacon_indicies/indicies.go:244
#	0x1b5da49	github.com/erigontech/erigon/cl/antiquary.(*Antiquary).Loop+0x829			github.com/erigontech/erigon/cl/antiquary/antiquary.go:203
#	0x1fb1f05	github.com/erigontech/erigon/cmd/caplin/caplin1.RunCaplinService.func3+0xe5		github.com/erigontech/erigon/cmd/caplin/caplin1/run.go:470


1 @ 0x4bbacb 0x144f606 0x1455eb3 0x1455e2a 0x146006d 0x1460053 0x1461dc5 0x1461dc6 0x1f8e3c8 0x1f93a45 0x1f94c30 0x1f8875a 0x1f94846 0x1f98751 0x4c7901
#	0x144f605	github.com/erigontech/mdbx-go/mdbx._Cfunc_mdbx_txn_begin+0x45					_cgo_gotypes.go:1053
#	0x1455eb2	github.com/erigontech/mdbx-go/mdbx.beginTxn.func1+0x152						github.com/erigontech/mdbx-go@v0.39.17/mdbx/txn.go:105
#	0x1455e29	github.com/erigontech/mdbx-go/mdbx.beginTxn+0xc9						github.com/erigontech/mdbx-go@v0.39.17/mdbx/txn.go:105
#	0x146006c	github.com/erigontech/mdbx-go/mdbx.(*Env).BeginTxn+0x8c						github.com/erigontech/mdbx-go@v0.39.17/mdbx/env.go:531
#	0x1460052	github.com/erigontech/erigon/db/kv/mdbx.(*MdbxKV).beginRw+0x72					github.com/erigontech/erigon/db/kv/mdbx/kv_mdbx.go:641
#	0x1461dc4	github.com/erigontech/erigon/db/kv/mdbx.(*MdbxKV).BeginRw+0x44					github.com/erigontech/erigon/db/kv/mdbx/kv_mdbx.go:623
#	0x1461dc5	github.com/erigontech/erigon/db/kv/mdbx.(*MdbxKV).Update+0x45					github.com/erigontech/erigon/db/kv/mdbx/kv_mdbx.go:897
#	0x1f8e3c7	github.com/erigontech/erigon/cl/phase1/stages.processBlock+0xe7					github.com/erigontech/erigon/cl/phase1/stages/clstages.go:163
#	0x1f93a44	github.com/erigontech/erigon/cl/phase1/stages.processDownloadedBlockBatches+0x304		github.com/erigontech/erigon/cl/phase1/stages/forward_sync.go:182
#	0x1f94c2f	github.com/erigontech/erigon/cl/phase1/stages.forwardSync.func1+0x6f				github.com/erigontech/erigon/cl/phase1/stages/forward_sync.go:263
#	0x1f88759	github.com/erigontech/erigon/cl/phase1/network.(*ForwardBeaconDownloader).RequestMore+0x3f9	github.com/erigontech/erigon/cl/phase1/network/beacon_downloader.go:151
#	0x1f94845	github.com/erigontech/erigon/cl/phase1/stages.forwardSync+0x465					github.com/erigontech/erigon/cl/phase1/stages/forward_sync.go:279
#	0x1f98750	github.com/erigontech/erigon/cl/clstages.(*StageGraph[...]).StartWithStage.func1+0x70		github.com/erigontech/erigon/cl/clstages/clstages.go:54


1 @ 0x4bf68e 0x4c40a5 0x1f8a04e 0x1f894f9 0x4c7901
#	0x4c40a4	time.Sleep+0x164										runtime/time.go:363
#	0x1f8a04d	github.com/erigontech/erigon/cl/phase1/network.(*BlobHistoryDownloader).downloadOnce+0x66d	github.com/erigontech/erigon/cl/phase1/network/blob_downloader.go:245
#	0x1f894f8	github.com/erigontech/erigon/cl/phase1/network.(*BlobHistoryDownloader).run+0x78		github.com/erigontech/erigon/cl/phase1/network/blob_downloader.go:167


I also see time.Sleep:

if !b.syncedChecker.Synced() {
			time.Sleep(5 * time.Second)
			continue
		}

and

func (s *Sentinel) stickToPeers(peers []multiaddr.Multiaddr) {
	// connect to static peers every one minute
	go func() {
		for {
			if err := s.connectWithAllPeers(peers); err != nil {
				log.Debug("[Sentinel] Could not connect with static peers", "err", err)
			}
			time.Sleep(3 * time.Minute)
		}
	}()
}

and

func (r *tokenBucketRateLimiter) cleanup() {
	for {
		time.Sleep(10 * time.Second)
		r.mu.Lock()
		for key, limiter := range r.limiter {
			if time.Since(limiter.lastAccess) > 3*time.Minute {
				delete(r.limiter, key)
			}
		}
		r.mu.Unlock()
	}
}

Metadata

Metadata

Assignees

Labels

CaplinCaplin: Consensus Layer, Beacon API

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions