11:33:51 checking the library is not changing (60 s)... 11:35:02 ===== Audiobookshelf ===== 11:35:06 [Audiobookshelf] initial scan 1/3: wipe + fresh start 11:41:13 Audiobookshelf initial-1: wall 230.338 s, app-reported 229.56 s, cpu 1120.93 s, peak anon 583.4 MiB 11:42:18 [Audiobookshelf] initial scan 2/3: wipe + fresh start 11:48:25 Audiobookshelf initial-2: wall 230.367 s, app-reported 229.615 s, cpu 1113.113 s, peak anon 445.6 MiB 11:49:30 [Audiobookshelf] initial scan 3/3: wipe + fresh start 11:55:35 Audiobookshelf initial-3: wall 228.395 s, app-reported 227.668 s, cpu 1103.219 s, peak anon 377.7 MiB 11:56:40 [Audiobookshelf] no-change rescan (cold) 1/3 11:56:52 Audiobookshelf rescan-cold-1: wall 5.078 s, app-reported 4.359 s, cpu 2.71 s, peak anon 229.5 MiB 11:56:57 [Audiobookshelf] no-change rescan (cold) 2/3 11:57:09 Audiobookshelf rescan-cold-2: wall 5.117 s, app-reported 4.387 s, cpu 2.619 s, peak anon 230.1 MiB 11:57:14 [Audiobookshelf] no-change rescan (cold) 3/3 11:57:25 Audiobookshelf rescan-cold-3: wall 4.855 s, app-reported 4.112 s, cpu 2.561 s, peak anon 233.0 MiB 11:57:30 [Audiobookshelf] no-change rescan (warm) 1/3 11:57:37 Audiobookshelf rescan-warm-1: wall 5.376 s, cpu 2.494 s 11:57:42 [Audiobookshelf] no-change rescan (warm) 2/3 11:57:48 Audiobookshelf rescan-warm-2: wall 5.529 s, cpu 2.493 s 11:57:53 [Audiobookshelf] no-change rescan (warm) 3/3 11:58:00 Audiobookshelf rescan-warm-3: wall 5.278 s, cpu 2.424 s 11:58:05 [Audiobookshelf] cold start 1/3 11:58:14 first authenticated response 4.271 s after docker start 11:58:19 [Audiobookshelf] cold start 2/3 11:58:27 first authenticated response 4.541 s after docker start 11:58:32 [Audiobookshelf] cold start 3/3 11:58:41 first authenticated response 4.721 s after docker start 11:58:46 [Audiobookshelf] first-request cover latency (30 distinct books) cover_first_request p50 63.5 ms p95 70.93 ms n 30 status {'200': 30} {"grid":"http://192.168.0.10:13399/audiobookshelf/api/libraries/4fe030ed-7f60-40b9-8c2b-812104f6d405/items?sort=media.metadata.title&desc=0&limit=36&page=0&minified=1&include=rssfeed,numEpisodesIncomplete,share","cover":"http://192.168.0.10:13399/audiobookshelf/api/items/6860314a-14fb-4be6-b6d8-09f5d8134c0e/cover?ts=1793188519494"} 11:58:51 web probe: grid request http://192.168.0.10:13399/audiobookshelf/api/libraries/4fe030ed-7f60-40b9-8c2b-812104f6d405/items?sort=media.metadata.title&desc=0&limit=36&page=0&minified=1&include=rssfeed,numEpisodesIncomplete,share 11:58:51 [Audiobookshelf] API latency from the Mac (100 x each, 5 warm-up) home_shelves p50 1.9 ms p95 2.41 ms bytes 28125 status {'200': 100} counts {'[]': 4, '[].entities': 32} home_library_filterdata p50 1.99 ms p95 2.88 ms bytes 43996 status {'200': 100} counts None libraries p50 1.78 ms p95 2.29 ms bytes 872 status {'200': 100} counts {'libraries': 1} library_page1 p50 2.07 ms p95 2.69 ms bytes 43006 status {'200': 100} counts {'results': 36, 'total': 999} library_deep_page p50 2.02 ms p95 2.68 ms bytes 41295 status {'200': 100} counts {'results': 36, 'total': 999} search_the p50 2.38 ms p95 2.94 ms bytes 307350 status {'200': 100} counts {'book': 12, 'authors': 12, 'series': 0, 'narrators': 0, 'tags': 0, 'genres': 0} search_the_typeahead p50 1.81 ms p95 2.2 ms bytes 62365 status {'200': 100} counts {'book': 3, 'authors': 3, 'series': 0, 'narrators': 0, 'tags': 0, 'genres': 0} search_dickens p50 1.53 ms p95 1.98 ms bytes 306 status {'200': 100} counts {'book': 0, 'authors': 1, 'series': 0, 'narrators': 0, 'tags': 0, 'genres': 0} search_title p50 1.83 ms p95 2.48 ms bytes 26572 status {'200': 100} counts {'book': 1, 'authors': 0, 'series': 0, 'narrators': 0, 'tags': 0, 'genres': 0} search_dickens_then_author_page p50 16.27 ms p95 18.18 ms bytes 16323 status {'200,200': 100} counts {'libraryItems': 14} search_dickens_typeahead p50 1.56 ms p95 2.03 ms bytes 306 status {'200': 100} counts {'book': 0, 'authors': 1, 'series': 0, 'narrators': 0, 'tags': 0, 'genres': 0} detail_mp3 p50 8.45 ms p95 11.37 ms bytes 52772 status {'200': 100} counts {'media.audioFiles': 20, 'media.chapters': 20} detail_m4b p50 7.22 ms p95 8.35 ms bytes 4396 status {'200': 100} counts {'media.audioFiles': 1, 'media.chapters': 1} play_first_byte_mp3 p50 14.05 ms p95 15.58 ms bytes 77570 status {'200,206': 100} counts {'audioTracks': 20, 'chapters': 20} play_first_byte_m4b p50 12.03 ms p95 14.33 ms bytes 6879 status {'200,206': 100} counts {'audioTracks': 1, 'chapters': 1} cover_grid p50 2.01 ms p95 4.64 ms bytes 10332 status {'200': 100} counts None concurrency paced 20 clients x 1 req/0.5s for 20s: 40.0 req/s p50 1.84 p95 2.75 ms status {'200': 800} concurrency saturating 20x20s: 1841.0 req/s ok p95 18.61 ms status {'200': 36819} 12:00:45 [Audiobookshelf] API latency from the host (python:3-alpine, --network host) 12:02:36 [Audiobookshelf] web UI (Playwright, 5 cold + 5 warm per page) home: cold first cover 205 ms, screen 214 ms, 59 req, 4163 KiB (JS 2643 KiB) | warm first cover 197 ms, screen 198 ms, 13 KiB grid: cold first cover 219 ms, screen 237 ms, 72 req, 4148 KiB (JS 2643 KiB) | warm first cover 221 ms, screen 221 ms, 13 KiB 12:03:25 [Audiobookshelf] admin health page (Playwright, 5 cold + 5 warm) issues: cold ready 187 ms (last API 174 ms, 5 API req, 3548 KiB) | warm ready 181 ms POST /audiobookshelf/api/authorize 200 2353 B start 113 dur 3 ms GET /audiobookshelf/api/libraries/4fe030ed-7f60-40b9-8c2b-812104f6d405?include=filterdata 200 44292 B start 117 dur 2 ms GET /audiobookshelf/api/libraries 200 1165 B start 180 dur 2 ms GET /audiobookshelf/api/tasks?include=queue 200 341 B start 180 dur 2 ms GET /audiobookshelf/api/libraries/4fe030ed-7f60-40b9-8c2b-812104f6d405/items?filter=issues&sort=media.metadata.title&desc=0&limit=36&page=0&minified=1&include=rssfeed,numEpisodesIncomplete,share 200 522 B start 184 dur 12 ms 12:03:47 [Audiobookshelf] admin health API (100 x each, 5 warm-up) admin_issues p50 1.54 ms p95 1.88 ms bytes 195 status {'200': 100} counts {'results': 0, 'total': 0} 12:03:56 ===== AudioSilo ===== 12:04:05 [AudioSilo] initial scan 1/3: wipe + fresh start 12:09:07 AudioSilo initial-1: wall 167.788 s, app-reported 167.754 s, cpu 1202.137 s, peak anon 227.6 MiB 12:10:11 [AudioSilo] initial scan 2/3: wipe + fresh start 12:15:17 AudioSilo initial-2: wall 170.93 s, app-reported 170.896 s, cpu 1217.382 s, peak anon 225.9 MiB 12:16:22 [AudioSilo] initial scan 3/3: wipe + fresh start 12:21:29 AudioSilo initial-3: wall 170.897 s, app-reported 170.775 s, cpu 1222.186 s, peak anon 228.8 MiB 12:22:34 [AudioSilo] no-change rescan (cold) 1/3 12:22:42 AudioSilo rescan-cold-1: wall 0.797 s, app-reported 0.635 s, cpu 0.733 s, peak anon 39.9 MiB 12:22:47 [AudioSilo] no-change rescan (cold) 2/3 12:22:54 AudioSilo rescan-cold-2: wall 0.789 s, app-reported 0.631 s, cpu 0.736 s, peak anon 34.5 MiB 12:22:59 [AudioSilo] no-change rescan (cold) 3/3 12:23:06 AudioSilo rescan-cold-3: wall 0.786 s, app-reported 0.634 s, cpu 0.736 s, peak anon 36.7 MiB 12:23:11 [AudioSilo] no-change rescan (warm) 1/3 12:23:14 AudioSilo rescan-warm-1: wall 1.616 s, cpu 0.644 s 12:23:19 [AudioSilo] no-change rescan (warm) 2/3 12:23:22 AudioSilo rescan-warm-2: wall 1.596 s, cpu 0.651 s 12:23:27 [AudioSilo] no-change rescan (warm) 3/3 12:23:30 AudioSilo rescan-warm-3: wall 1.632 s, cpu 0.635 s 12:23:35 [AudioSilo] cold start 1/3 12:23:42 first authenticated response 2.940 s after docker start 12:23:47 [AudioSilo] cold start 2/3 12:23:55 first authenticated response 3.134 s after docker start 12:24:00 [AudioSilo] cold start 3/3 12:24:08 first authenticated response 3.216 s after docker start 12:24:13 [AudioSilo] first-request cover latency (30 distinct books) cover_first_request p50 6.15 ms p95 7.48 ms n 30 status {'200': 30} {"grid":"http://192.168.0.10:8199/api/v1/libraries/1/books?sort=recent&limit=200","cover":"http://192.168.0.10:8199/api/v1/libraries/1/cover?path=H.+G.+Wells%2FFloor+Games&size=320&v=44502a6ab7&token=..."} 12:24:16 web probe: grid request http://192.168.0.10:8199/api/v1/libraries/1/books?sort=recent&limit=200 12:24:16 [AudioSilo] API latency from the Mac (100 x each, 5 warm-up) home_shelves p50 1.6 ms p95 1.92 ms bytes 23034 status {'200': 100} counts {'books': 48} home_progress p50 1.42 ms p95 1.7 ms bytes 18 status {'200': 100} counts None home_stats p50 2.04 ms p95 2.36 ms bytes 1827 status {'200': 100} counts None home_listening p50 1.67 ms p95 2.0 ms bytes 12924 status {'200': 100} counts None home_favourites p50 1.52 ms p95 1.78 ms bytes 20 status {'200': 100} counts None libraries p50 1.32 ms p95 1.68 ms bytes 118 status {'200': 100} counts {'libraries': 1} server_info p50 1.19 ms p95 1.4 ms bytes 779 status {'200': 100} counts None library_page1 p50 1.3 ms p95 1.56 ms bytes 80512 status {'200': 100} counts {'books': 200} library_deep_page p50 1.29 ms p95 1.71 ms bytes 79738 status {'200': 100} counts {'books': 200} library_all_pages p50 6.51 ms p95 7.17 ms bytes 398202 status {'200,200,200,200,200': 100} counts {'books': 1000} search_the p50 1.38 ms p95 1.73 ms bytes 23922 status {'200': 100} counts {'books': 50} search_dickens p50 1.47 ms p95 1.89 ms bytes 6436 status {'200': 100} counts {'books': 14} search_title p50 1.38 ms p95 1.68 ms bytes 457 status {'200': 100} counts {'books': 1} detail_mp3 p50 1.71 ms p95 2.09 ms bytes 8616 status {'200': 100} counts {'files': 20, 'chapters': 20} detail_mp3_chapters p50 1.76 ms p95 2.17 ms bytes 8341 status {'200': 100} counts {'files': 20, 'chapters': 20} detail_m4b p50 1.52 ms p95 2.05 ms bytes 799 status {'200': 100} counts {'files': 1, 'chapters': 1} detail_m4b_chapters p50 1.48 ms p95 1.8 ms bytes 506 status {'200': 100} counts {'files': 1, 'chapters': 1} play_first_byte_mp3 p50 5.28 ms p95 6.15 ms bytes 19 status {'200,206': 100} counts None play_first_byte_m4b p50 5.29 ms p95 6.24 ms bytes 19 status {'200,206': 100} counts None cover_grid p50 2.81 ms p95 3.17 ms bytes 7548 status {'200': 100} counts None concurrency paced 20 clients x 1 req/0.5s for 20s: 40.0 req/s p50 1.35 p95 1.83 ms status {'200': 800} concurrency saturating 20x20s: 12543.5 req/s ok p95 1.39 ms status {'200': 250871} 12:26:40 [AudioSilo] API latency from the host (python:3-alpine, --network host) 12:28:50 [AudioSilo] web UI (Playwright, 5 cold + 5 warm per page) home: cold first cover 177 ms, screen 195 ms, 56 req, 1955 KiB (JS 1302 KiB) | warm first cover 173 ms, screen 186 ms, 41 KiB grid: cold first cover 190 ms, screen 205 ms, 78 req, 2552 KiB (JS 1297 KiB) | warm first cover 184 ms, screen 184 ms, 432 KiB 12:29:38 [AudioSilo] admin health page (Playwright, 5 cold + 5 warm) issues: cold ready 138 ms (last API 138 ms, 8 API req, 591 KiB) | warm ready 137 ms GET /api/v1/me 200 443 B start 82 dur 3 ms GET /api/v1/admin/setup 200 439 B start 126 dur 2 ms GET /api/v1/server 200 1030 B start 127 dur 1 ms GET /api/v1/admin/libraries 200 575 B start 128 dur 3 ms GET /api/v1/admin/events?limit=20 200 682 B start 128 dur 1 ms GET /api/v1/admin/issues 200 1796 B start 136 dur 24 ms GET /api/v1/admin/books?issue=scan_error&sort=added&order=desc&limit=50 200 1164 B start 174 dur 4 ms POST /api/v1/admin/covers 200 80465 B start 190 dur 11 ms system: cold ready 113 ms (last API 96 ms, 6 API req, 461 KiB) | warm ready 106 ms GET /api/v1/me 200 443 B start 46 dur 2 ms GET /api/v1/admin/setup 200 439 B start 83 dur 2 ms GET /api/v1/server 200 1030 B start 83 dur 1 ms GET /api/v1/admin/libraries 200 575 B start 84 dur 2 ms GET /api/v1/admin/events?limit=20 200 682 B start 85 dur 1 ms GET /api/v1/admin/system 200 1513 B start 91 dur 283 ms 12:30:21 [AudioSilo] admin health API (100 x each, 5 warm-up) admin_issues p50 1.48 ms p95 1.75 ms bytes 1544 status {'200': 100} counts {'categories': 10, 'categories.[].count': 1006} admin_issue_books p50 1.12 ms p95 1.39 ms bytes 913 status {'200': 100} counts {'books': 1} admin_system p50 1.54 ms p95 1.83 ms bytes 1261 status {'200': 100} counts None 12:30:39 done in 3334.4 s; results in results/final-1000