nuts-foundation / nuts-foundation/nuts-node

V6 startup takes ~5 hours repeatedly due to VDR history processing after restart (ACI + Azure File Share)

Open
#4,194 4 comments 0 reactions 1 assignee View on GitHub

@reinkrul is already working on this.

Since Apr 16, 2026.

Dominant language
Go
Stars
28
Forks
23
Avg merge
1d 10h
Merged PRs (30d)
76

Description

Summary

Our Nuts Node v6.1.5 startup regularly takes about 5 hours after deployment/restart.
The delay appears during VDR migration/history processing and repeated VC processing from the network.

Environment

  • Nuts Node version: 6.1.5
  • Deployment: Azure Container Instance (ACI)
  • Storage:
    • SQL configured (storage.sql.connection is set)
    • BBolt data on mounted Azure File Share (/opt/nuts/data)
  • TLS:
    • tls.certfile, tls.certkeyfile, tls.truststorefile configured and readable
  • Network:
    • bootstrap node configured (nuts.test.kikstarter.nl:5555)
    • node connects/discovers peers successfully

Observed behavior

After deploy/restart, startup phase takes very long (~5 hours), especially around:

  • Migrating VDR
  • processing historical network/VDR data
  • log pattern similar to Processing VC received from Nuts Network

We also see:

  • Completed 0 migrations for SQL storage (so SQL schema migrations themselves are not the bottleneck)
  • gRPC starts and peer discovery works

Expected behavior

  • Startup should complete in reasonable time
  • VDR history/migration should not repeatedly take hours on normal restarts
  • Idempotent migration should be fast after first successful completion

Relevant startup logs

time="2026-04-15T10:24:05Z" level=debug msg="Running database migrations..." module=Storage
time="2026-04-15T10:24:05Z" level=info msg="Completed 0 migrations" module=Storage
...
time="2026-04-15T10:25:07Z" level=debug msg="Migrating VDR" module=core
time="2026-04-15T10:25:07Z" level=info msg="Running did:nuts migration: 'remove controller'" module=VDR
time="2026-04-15T10:25:07Z" level=info msg="Running did:nuts migration: 'document history'" module=VDR
time="2026-04-15T10:25:07Z" level=info msg="Running did:nuts migration: 'add did:web to subject'" module=VDR
...
time="2026-04-15T10:25:07Z" level=debug msg="Starting gRPC server on :5555" module=Network
time="2026-04-15T10:25:07Z" level=info msg="gRPC server started on :5555" module=Network
time="2026-04-15T10:25:07Z" level=debug msg="Discovered Nuts node" did="did:nuts:..." module=Network nodeAddr="grpc.****.test.***-v-da*******tion.nl:443"

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.