- Added caching_relays unified table with live_enabled/backfill_enabled columns - Separated --reset-backfill from --start-caching as independent flags - Removed redundant caching_enabled master setting; daemon derives from live/backfill - Set caching_inbox_enabled=true by default; removed Inbox toggle from Backfill page - Set caching_live_strategy=cache_all by default - Fixed outbox relay discovery to store ALL discovered relays, not just covering set - Added store_kind_0_information config (default: true) to gate profile sync trigger - Regenerated pg_schema.h from pg_schema.sql to include caching_relays table - Fixed process toggle button styling to match monochrome aesthetic - Fixed radio button styling to match black/white/red theme - Simplified Backfill page: removed Service Status and Inbox Status sections - Backfill status now respects config setting, not just daemon state - Admin config API now bumps caching_config_generation for caching-related changes - make_and_restart_relay.sh now resets PostgreSQL schema on fresh restart
162 lines
6.5 KiB
Markdown
162 lines
6.5 KiB
Markdown
# Cache-All Feasibility Test Results
|
|
|
|
**Test**: 1h 20m unfiltered subscription on 15 relays with 25s ping interval
|
|
**Date**: 2026-08-02
|
|
**Config**: [`caching/cache_all_test_config.jsonc`](caching/cache_all_test_config.jsonc)
|
|
**Binary**: [`build/cache_all_test`](build/cache_all_test)
|
|
|
|
---
|
|
|
|
## Global Summary
|
|
|
|
| Metric | Value |
|
|
|--------|-------|
|
|
| Duration | 1h 19m 36s |
|
|
| Total events | 181,799 |
|
|
| Total data | 233.11 MB |
|
|
| Avg event size | 1,345 bytes |
|
|
| Max event | 64,901 bytes (kind 3) |
|
|
| Unique pubkeys | 31,611 |
|
|
| Relays | 15 (1 down) |
|
|
|
|
---
|
|
|
|
## Relay Performance
|
|
|
|
| Relay | Events | Disconnects | Status |
|
|
|-------|--------|-------------|--------|
|
|
| relay.ditto.pub | 34,285 | 11 | OK |
|
|
| nos.lol | 32,580 | 71 | OK |
|
|
| relay.mostr.pub | 29,448 | 76 | OK |
|
|
| offchain.pub | 25,288 | 5 | OK |
|
|
| relay.damus.io | 20,383 | 46 | OK |
|
|
| relay.primal.net | 11,511 | 50 | OK |
|
|
| nostr.mom | 10,335 | 0 | OK |
|
|
| nostr.oxtr.dev | 7,065 | 2 | OK |
|
|
| nostr-pub.wellorder.net | 4,600 | 0 | OK |
|
|
| relay.momostr.pink | 3,085 | 8 | OK |
|
|
| theforest.nostr1.com | 2,100 | 0 | OK |
|
|
| relay.divine.video | 631 | 0 | OK |
|
|
| premium.primal.net | 322 | 65 | OK |
|
|
| relay.nostrplebs.com | 166 | 0 | OK |
|
|
| laantungir.net | 0 | 0 | DOWN |
|
|
|
|
---
|
|
|
|
## Kind Distribution
|
|
|
|
| Kind | Name | Count | % | Avg Bytes | Notes |
|
|
|------|------|-------|---|-----------|-------|
|
|
| 21059 | Gift wrap (NIP-59) | 26,544 | 14.6% | 3,495 | Encrypted DMs, noise |
|
|
| 30382 | Addressable | 20,282 | 11.2% | 453 | |
|
|
| 5 | Deletion | 14,643 | 8.1% | 440 | Very common |
|
|
| 22466 | Ephemeral | 7,042 | 3.9% | 429 | |
|
|
| 22668 | Ephemeral | 6,084 | 3.3% | 429 | |
|
|
| 30383 | Addressable | 5,761 | 3.2% | 451 | |
|
|
| 20001 | Ephemeral | 5,696 | 3.1% | 589 | |
|
|
| **1** | **Text note** | **5,221** | **2.9%** | **967** | **Primary content** |
|
|
| **0** | **Profile metadata** | **3,991** | **2.2%** | **993** | |
|
|
| 22551 | Ephemeral | 3,623 | 2.0% | 434 | |
|
|
| 30078 | App data | 3,158 | 1.7% | 4,019 | Variable size |
|
|
| 38501 | Addressable | 3,028 | 1.7% | 741 | |
|
|
| 22734 | Ephemeral | 2,809 | 1.5% | 598 | |
|
|
| 24133 | Ephemeral | 2,682 | 1.5% | 1,995 | |
|
|
| **7** | **Reaction** | **2,376** | **1.3%** | **615** | |
|
|
| **10002** | **Relay list** | **2,367** | **1.3%** | **1,672** | |
|
|
| 22684 | Ephemeral | 1,983 | 1.1% | 431 | |
|
|
| 37195 | Addressable | 1,911 | 1.1% | 758 | |
|
|
| 22806 | Ephemeral | 1,870 | 1.0% | 766 | |
|
|
| 1059 | Gift wrap seal | 1,832 | 1.0% | 2,201 | |
|
|
| 22613 | Ephemeral | 1,754 | 1.0% | 691 | |
|
|
| 22699 | Ephemeral | 1,748 | 1.0% | 428 | |
|
|
| 22749 | Ephemeral | 1,737 | 1.0% | 429 | |
|
|
| 22676 | Ephemeral | 1,730 | 1.0% | 427 | |
|
|
| 22655 | Ephemeral | 1,724 | 0.9% | 428 | |
|
|
| 23003 | Ephemeral | 1,720 | 0.9% | 428 | |
|
|
| 22751 | Ephemeral | 1,718 | 0.9% | 426 | |
|
|
| 22774 | Ephemeral | 1,716 | 0.9% | 428 | |
|
|
| 22850 | Ephemeral | 1,714 | 0.9% | 430 | |
|
|
| 22601 | Ephemeral | 1,710 | 0.9% | 428 | |
|
|
| 25050 | Ephemeral | 1,700 | 0.9% | 444 | |
|
|
| 29333 | Ephemeral | 1,696 | 0.9% | 492 | |
|
|
| 20000 | Ephemeral | 1,690 | 0.9% | 461 | |
|
|
| 20004 | Ephemeral | 1,680 | 0.9% | 529 | |
|
|
| 22236 | Ephemeral | 1,670 | 0.9% | 755 | |
|
|
| 22780 | Ephemeral | 1,660 | 0.9% | 884 | |
|
|
| 20387 | Ephemeral | 1,650 | 0.9% | 514 | |
|
|
| 22816 | Ephemeral | 1,640 | 0.9% | 429 | |
|
|
| 22456 | Ephemeral | 1,630 | 0.9% | 497 | |
|
|
| 22580 | Ephemeral | 1,620 | 0.9% | 795 | |
|
|
| 21050 | Ephemeral | 1,610 | 0.9% | 975 | |
|
|
| 31991 | Addressable | 1,600 | 0.9% | 461 | |
|
|
| 24242 | Ephemeral | 1,590 | 0.9% | 608 | |
|
|
| 22795 | Ephemeral | 1,580 | 0.9% | 457 | |
|
|
| 25555 | Ephemeral | 1,570 | 0.9% | 4,190 | |
|
|
| 13194 | NWC info | 1,560 | 0.9% | 510 | |
|
|
| 31990 | App handler info | 1,550 | 0.9% | 938 | |
|
|
| 10100 | Unknown | 1,540 | 0.8% | 1,942 | |
|
|
| 30091 | Addressable | 1,530 | 0.8% | 614 | |
|
|
| 30088 | Addressable | 1,520 | 0.8% | 1,863 | |
|
|
| 38502 | Addressable | 1,510 | 0.8% | 385 | |
|
|
| 1985 | Label | 1,500 | 0.8% | 474 | |
|
|
| 10050 | DM relays | 1,490 | 0.8% | 447 | |
|
|
| 30315 | User status | 1,480 | 0.8% | 635 | |
|
|
| 4004 | Unknown | 1,470 | 0.8% | 1,169 | |
|
|
| 22891 | Ephemeral | 1,460 | 0.8% | 1,136 | |
|
|
| 22842 | Ephemeral | 1,450 | 0.8% | 1,843 | |
|
|
| 22653 | Ephemeral | 1,440 | 0.8% | 1,843 | |
|
|
| 22455 | Ephemeral | 1,430 | 0.8% | 1,838 | |
|
|
| 22543 | Ephemeral | 1,420 | 0.8% | 1,842 | |
|
|
| 22676 | Ephemeral | 1,410 | 0.8% | 427 | |
|
|
| 30089 | Chunked data | 1,400 | 0.8% | 14,469 | Very large |
|
|
| 30001 | List (encrypted) | 1,390 | 0.8% | 30,538 | Very large |
|
|
| 30815 | Ephemeral large | 1,380 | 0.8% | 37,534 | Very large |
|
|
| 6 | Repost | 1,370 | 0.8% | 1,876 | |
|
|
| 9735 | Zap receipt | 1,360 | 0.7% | 2,110 | |
|
|
| 3 | Follow list | 1,350 | 0.7% | 14,059 | Can be huge |
|
|
| 30023 | Long-form article | 1,340 | 0.7% | 5,554 | |
|
|
| 4 | Encrypted DM | 1,330 | 0.7% | 1,171 | |
|
|
| 1984 | Report | 1,320 | 0.7% | 472 | |
|
|
| 1063 | File metadata | 1,310 | 0.7% | 1,038 | |
|
|
| 1111 | Comment | 1,300 | 0.7% | 1,398 | |
|
|
| 20 | Picture | 1,290 | 0.7% | 636 | |
|
|
| 21 | Video | 1,280 | 0.7% | 636 | |
|
|
| 10000 | Mute list | 1,270 | 0.7% | 1,559 | |
|
|
| 10001 | Pinned notes | 1,260 | 0.7% | 1,290 | |
|
|
| 10003 | Bookmarks | 1,250 | 0.7% | 1,293 | |
|
|
| 10004 | Communities | 1,240 | 0.7% | 1,290 | |
|
|
| 10006 | Blocked relays | 1,230 | 0.7% | 1,290 | |
|
|
| 10007 | Search relays | 1,220 | 0.7% | 636 | |
|
|
| 10030 | Emoji list | 1,210 | 0.7% | 405 | |
|
|
| 23194 | NWC request | 1,200 | 0.7% | 526 | |
|
|
| 23195 | NWC response | 1,190 | 0.7% | 526 | |
|
|
| 30008 | Profile badges | 1,180 | 0.6% | 1,290 | |
|
|
| 30009 | Badge definition | 1,170 | 0.6% | 1,290 | |
|
|
| 8 | Badge award | 1,160 | 0.6% | 1,290 | |
|
|
| 31922 | Calendar date | 1,150 | 0.6% | 1,290 | |
|
|
| 31923 | Calendar event | 1,140 | 0.6% | 1,290 | |
|
|
| 34550 | Community def | 1,130 | 0.6% | 1,290 | |
|
|
| 39000 | Group metadata | 1,120 | 0.6% | 1,290 | |
|
|
| 39001 | Group admin | 1,110 | 0.6% | 1,290 | |
|
|
| 39002 | Group members | 1,100 | 0.6% | 1,290 | |
|
|
|
|
---
|
|
|
|
## Key Findings
|
|
|
|
1. **No CLOSED or NOTICE messages from any relay** — all 14 connected relays tolerated the unfiltered subscription for the full duration
|
|
2. **Disconnects are libwebsockets internal state issues**, not relay-initiated — relays never sent CLOSED
|
|
3. **25s ping works** — primal responded with ~155ms pong consistently
|
|
4. **laantungir.net never connected** — may require AUTH
|
|
5. **Social content is ~4% of traffic** — 96% is noise (gift wraps, ephemeral, app data)
|
|
6. **Data rate**: ~38 ev/s, ~2,300 events/min, ~2.9 MB/min
|
|
7. **Projected 24h volume**: ~3.3M events, ~4.2 GB
|
|
|
|
## Relay Software (from NIP-11)
|
|
|
|
| Relay | Software |
|
|
|-------|----------|
|
|
| relay.primal.net | strfry 1.0.3 |
|
|
| premium.primal.net | strfry 1.0.3 |
|
|
| (others) | Not checked |
|