Access-Control-Expose-Headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset
Content-Security-Policy: default-src 'none'
X-Ratelimit-Limit: 5000
X-Github-Request-Id: 545E:1E338F:1CE4A84:1996CBD:6973A26D
X-Github-Media-Type: github.v3; param=squirrel-girl-preview
X-Content-Type-Options: nosniff
X-Ratelimit-Remaining: 4996
X-Ratelimit-Used: 4
X-Ratelimit-Resource: core
Cache-Control: private, max-age=60, s-maxage=60
Vary: Accept, Authorization, Cookie, X-GitHub-OTP,Accept-Encoding, Accept, X-Requested-With
Etag: W/"a49a1c60869efd0512ebf397fe3b38f0f0780cd1108773b389a457d5139908be"
Access-Control-Allow-Origin: *
Referrer-Policy: origin-when-cross-origin, strict-origin-when-cross-origin
Link: <https://api.github.com/repositories/68390476/issues?after=Y3Vyc29yOnYyOpLPAAABmqckTzDO2bC8uw%3D%3D&direction=asc&per_page=45&sort=created&state=all>; rel="next", <https://api.github.com/repositories/68390476/issues?direction=asc&per_page=45&sort=created&state=all&before=Y3Vyc29yOnYyOpLPAAABgogj6NjOT44T8w%3D%3D>; rel="prev"
X-Github-Api-Version-Selected: 2022-11-28
Strict-Transport-Security: max-age=31536000; includeSubdomains; preload
X-Frame-Options: deny
X-Xss-Protection: 0
X-Ratelimit-Reset: 1769189499
Content-Type: application/json; charset=utf-8
X-Accepted-Github-Permissions: issues=read

[{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/92","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/92/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/92/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/92/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/92","id":1334711283,"node_id":"PR_kwDOBBOOTM489mbM","number":92,"title":"align vmb.h with the varnish version","user":{"login":"janosmiko","id":693558,"node_id":"MDQ6VXNlcjY5MzU1OA==","avatar_url":"https://avatars.githubusercontent.com/u/693558?v=4","gravatar_id":"","url":"https://api.github.com/users/janosmiko","html_url":"https://github.com/janosmiko","followers_url":"https://api.github.com/users/janosmiko/followers","following_url":"https://api.github.com/users/janosmiko/following{/other_user}","gists_url":"https://api.github.com/users/janosmiko/gists{/gist_id}","starred_url":"https://api.github.com/users/janosmiko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/janosmiko/subscriptions","organizations_url":"https://api.github.com/users/janosmiko/orgs","repos_url":"https://api.github.com/users/janosmiko/repos","events_url":"https://api.github.com/users/janosmiko/events{/privacy}","received_events_url":"https://api.github.com/users/janosmiko/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2022-08-10T14:23:51Z","updated_at":"2022-08-10T14:50:33Z","closed_at":"2022-08-10T14:50:33Z","author_association":"NONE","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/92","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/92","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/92.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/92.patch","merged_at":"2022-08-10T14:50:33Z"},"body":"I open these pull requests to apply @gquintard 's fix on ARM builds for older varnish versions.","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/92/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/92/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/93","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/93/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/93/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/93/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/93","id":1334955060,"node_id":"PR_kwDOBBOOTM48-Zu6","number":93,"title":"Branch for 7.1","user":{"login":"janosmiko","id":693558,"node_id":"MDQ6VXNlcjY5MzU1OA==","avatar_url":"https://avatars.githubusercontent.com/u/693558?v=4","gravatar_id":"","url":"https://api.github.com/users/janosmiko","html_url":"https://github.com/janosmiko","followers_url":"https://api.github.com/users/janosmiko/followers","following_url":"https://api.github.com/users/janosmiko/following{/other_user}","gists_url":"https://api.github.com/users/janosmiko/gists{/gist_id}","starred_url":"https://api.github.com/users/janosmiko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/janosmiko/subscriptions","organizations_url":"https://api.github.com/users/janosmiko/orgs","repos_url":"https://api.github.com/users/janosmiko/repos","events_url":"https://api.github.com/users/janosmiko/events{/privacy}","received_events_url":"https://api.github.com/users/janosmiko/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2022-08-10T17:32:13Z","updated_at":"2022-11-08T19:48:10Z","closed_at":"2022-11-08T19:48:10Z","author_association":"NONE","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/93","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/93","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/93.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/93.patch","merged_at":null},"body":"I prepared a branch for Varnish 7.1.\r\n\r\nOn top of the regular CI-elated changes I replaced the `Lck_CondWait` functions with `Lck_CondWaitTimeout` in the `src/vmod_dynamic.c` file to be up-to-date with Varnish 7.1 (https://github.com/varnishcache/varnish-cache/blob/5424da941529503c724911d8141e6824db756f88/doc/changes.rst)","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/93/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/93/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/94","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/94/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/94/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/94/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/94","id":1410081152,"node_id":"I_kwDOBBOOTM5UDCGA","number":94,"title":"Branches 7.1 / 7.2","user":{"login":"ronaldploeger","id":2346952,"node_id":"MDQ6VXNlcjIzNDY5NTI=","avatar_url":"https://avatars.githubusercontent.com/u/2346952?v=4","gravatar_id":"","url":"https://api.github.com/users/ronaldploeger","html_url":"https://github.com/ronaldploeger","followers_url":"https://api.github.com/users/ronaldploeger/followers","following_url":"https://api.github.com/users/ronaldploeger/following{/other_user}","gists_url":"https://api.github.com/users/ronaldploeger/gists{/gist_id}","starred_url":"https://api.github.com/users/ronaldploeger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronaldploeger/subscriptions","organizations_url":"https://api.github.com/users/ronaldploeger/orgs","repos_url":"https://api.github.com/users/ronaldploeger/repos","events_url":"https://api.github.com/users/ronaldploeger/events{/privacy}","received_events_url":"https://api.github.com/users/ronaldploeger/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2022-10-15T07:35:36Z","updated_at":"2022-11-09T16:17:58Z","closed_at":"2022-11-08T19:49:42Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi, \r\n\r\nwill there be a branch 7.1 and 7.2 or does the branch 7.0 work correctly with those versions of varnish? \r\n\r\nThanks and best regards,\r\nRonald","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/94/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/94/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/95","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/95/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/95/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/95/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/95","id":1440805930,"node_id":"I_kwDOBBOOTM5V4PQq","number":95,"title":"Update RPM build","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"slimhazard","id":6084911,"node_id":"MDQ6VXNlcjYwODQ5MTE=","avatar_url":"https://avatars.githubusercontent.com/u/6084911?v=4","gravatar_id":"","url":"https://api.github.com/users/slimhazard","html_url":"https://github.com/slimhazard","followers_url":"https://api.github.com/users/slimhazard/followers","following_url":"https://api.github.com/users/slimhazard/following{/other_user}","gists_url":"https://api.github.com/users/slimhazard/gists{/gist_id}","starred_url":"https://api.github.com/users/slimhazard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slimhazard/subscriptions","organizations_url":"https://api.github.com/users/slimhazard/orgs","repos_url":"https://api.github.com/users/slimhazard/repos","events_url":"https://api.github.com/users/slimhazard/events{/privacy}","received_events_url":"https://api.github.com/users/slimhazard/received_events","type":"User","user_view_type":"public","site_admin":false},"assignees":[{"login":"slimhazard","id":6084911,"node_id":"MDQ6VXNlcjYwODQ5MTE=","avatar_url":"https://avatars.githubusercontent.com/u/6084911?v=4","gravatar_id":"","url":"https://api.github.com/users/slimhazard","html_url":"https://github.com/slimhazard","followers_url":"https://api.github.com/users/slimhazard/followers","following_url":"https://api.github.com/users/slimhazard/following{/other_user}","gists_url":"https://api.github.com/users/slimhazard/gists{/gist_id}","starred_url":"https://api.github.com/users/slimhazard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slimhazard/subscriptions","organizations_url":"https://api.github.com/users/slimhazard/orgs","repos_url":"https://api.github.com/users/slimhazard/repos","events_url":"https://api.github.com/users/slimhazard/events{/privacy}","received_events_url":"https://api.github.com/users/slimhazard/received_events","type":"User","user_view_type":"public","site_admin":false}],"milestone":null,"comments":3,"created_at":"2022-11-08T19:47:13Z","updated_at":"2022-11-17T16:23:21Z","closed_at":"2022-11-17T16:23:21Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Ref https://github.com/nigoroll/libvmod-dynamic/pull/93/commits/e7c14cf7bbeaa51e15a2e2921629ab15c701b09d and #93 \r\n\r\nWe should update our RPM build to support 7.1 and/or 7.2\r\n","closed_by":{"login":"slimhazard","id":6084911,"node_id":"MDQ6VXNlcjYwODQ5MTE=","avatar_url":"https://avatars.githubusercontent.com/u/6084911?v=4","gravatar_id":"","url":"https://api.github.com/users/slimhazard","html_url":"https://github.com/slimhazard","followers_url":"https://api.github.com/users/slimhazard/followers","following_url":"https://api.github.com/users/slimhazard/following{/other_user}","gists_url":"https://api.github.com/users/slimhazard/gists{/gist_id}","starred_url":"https://api.github.com/users/slimhazard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slimhazard/subscriptions","organizations_url":"https://api.github.com/users/slimhazard/orgs","repos_url":"https://api.github.com/users/slimhazard/repos","events_url":"https://api.github.com/users/slimhazard/events{/privacy}","received_events_url":"https://api.github.com/users/slimhazard/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/95/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/95/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/96","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/96/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/96/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/96/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/96","id":1626745126,"node_id":"I_kwDOBBOOTM5g9ikm","number":96,"title":"7.3 compatibility","user":{"login":"gquintard","id":3776553,"node_id":"MDQ6VXNlcjM3NzY1NTM=","avatar_url":"https://avatars.githubusercontent.com/u/3776553?v=4","gravatar_id":"","url":"https://api.github.com/users/gquintard","html_url":"https://github.com/gquintard","followers_url":"https://api.github.com/users/gquintard/followers","following_url":"https://api.github.com/users/gquintard/following{/other_user}","gists_url":"https://api.github.com/users/gquintard/gists{/gist_id}","starred_url":"https://api.github.com/users/gquintard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gquintard/subscriptions","organizations_url":"https://api.github.com/users/gquintard/orgs","repos_url":"https://api.github.com/users/gquintard/repos","events_url":"https://api.github.com/users/gquintard/events{/privacy}","received_events_url":"https://api.github.com/users/gquintard/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2023-03-16T05:25:51Z","updated_at":"2023-03-17T09:03:03Z","closed_at":"2023-03-17T05:03:27Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"hi,\r\n\r\nAs I'm sure you know, some APIs have changed in Varnish 7.3, and libvmod-dynamic doesn't compile against it. I'm opening this for visibility, and I'll try to look into it this week-end if nobody beats me to it","closed_by":{"login":"gquintard","id":3776553,"node_id":"MDQ6VXNlcjM3NzY1NTM=","avatar_url":"https://avatars.githubusercontent.com/u/3776553?v=4","gravatar_id":"","url":"https://api.github.com/users/gquintard","html_url":"https://github.com/gquintard","followers_url":"https://api.github.com/users/gquintard/followers","following_url":"https://api.github.com/users/gquintard/following{/other_user}","gists_url":"https://api.github.com/users/gquintard/gists{/gist_id}","starred_url":"https://api.github.com/users/gquintard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gquintard/subscriptions","organizations_url":"https://api.github.com/users/gquintard/orgs","repos_url":"https://api.github.com/users/gquintard/repos","events_url":"https://api.github.com/users/gquintard/events{/privacy}","received_events_url":"https://api.github.com/users/gquintard/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/96/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/96/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/97","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/97/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/97/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/97/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/97","id":1628702332,"node_id":"I_kwDOBBOOTM5hFAZ8","number":97,"title":"via.vtc failing with \"Cannot assign requested address\"","user":{"login":"gquintard","id":3776553,"node_id":"MDQ6VXNlcjM3NzY1NTM=","avatar_url":"https://avatars.githubusercontent.com/u/3776553?v=4","gravatar_id":"","url":"https://api.github.com/users/gquintard","html_url":"https://github.com/gquintard","followers_url":"https://api.github.com/users/gquintard/followers","following_url":"https://api.github.com/users/gquintard/following{/other_user}","gists_url":"https://api.github.com/users/gquintard/gists{/gist_id}","starred_url":"https://api.github.com/users/gquintard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gquintard/subscriptions","organizations_url":"https://api.github.com/users/gquintard/orgs","repos_url":"https://api.github.com/users/gquintard/repos","events_url":"https://api.github.com/users/gquintard/events{/privacy}","received_events_url":"https://api.github.com/users/gquintard/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2023-03-17T05:10:25Z","updated_at":"2023-06-29T14:51:33Z","closed_at":"2023-06-29T14:51:32Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"stumbled onto this when trying to build https://github.com/varnish/docker-varnish/blob/master/fresh/debian/Dockerfile\r\n\r\ncould it be that\r\n```\r\nshell \"getent hosts localhost www.localhost img.localhost || true\"\r\n```\r\nshould actually be\r\n```\r\nfeature cmd \"getent hosts localhost www.localhost img.localhost || true\"\r\n```\r\n?\r\n\r\n```\r\nFAIL: tests/via\r\n===============\r\n\r\n**** dT    0.000\r\n*    top   TEST ./tests/via.vtc starting\r\n**** top   extmacro def pkg_version=7.3.0\r\n**** top   extmacro def pkg_branch=7.3\r\n**** top   extmacro def pwd=/tmp/module_to_build/src\r\n**** top   extmacro def date(...)\r\n**** top   extmacro def string(...)\r\n**** top   extmacro def vmod_dynamic=dynamic from \"/tmp/module_to_build/src/.libs/libvmod_dynamic.so\"\r\n**** top   extmacro def localhost=127.0.0.1\r\n**** top   extmacro def bad_backend=127.0.0.1:37455\r\n**** top   extmacro def listen_addr=127.0.0.1:0\r\n**** top   extmacro def bad_ip=192.0.2.255\r\n**** top   macro def testdir=/tmp/module_to_build/src/./tests\r\n**** top   macro def tmpdir=/tmp/vtc.31252.7c6136c4\r\n**   top   === varnishtest \"via\"\r\n*    top   VTEST via\r\n**   top   === shell \"getent hosts localhost www.localhost img.localhost ||...\r\n**** top   shell_cmd|exec 2>&1 ; getent hosts localhost www.localhost img.localhost || true\r\n**** dT    0.213\r\n**** top   shell_out|::1             localhost ip6-localhost ip6-loopback\r\n**** top   shell_status = 0x0000\r\n**   top   === server s1 {\r\n**   s1    Starting server\r\n**** s1    macro def s1_addr=127.0.0.1\r\n**** s1    macro def s1_port=41173\r\n**** s1    macro def s1_sock=127.0.0.1:41173\r\n*    s1    Listen on 127.0.0.1:41173\r\n**   top   === varnish v2 -proto PROXY -vcl {\r\n**   s1    Started on 127.0.0.1:41173 (1 iterations)\r\n**** dT    0.216\r\n**   v2    Launch\r\n***  v2    CMD: cd ${pwd} && exec varnishd  -d -n /tmp/vtc.31252.7c6136c4/v2 -i v2 -p debug=+vcl_keep -p debug=+vmod_so_keep -p debug=+vsm_keep -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0',PROXY -M '127.0.0.1 45329' -P /tmp/vtc.31252.7c6136c4/v2/varnishd.pid \r\n***  v2    CMD: cd /tmp/module_to_build/src && exec varnishd  -d -n /tmp/vtc.31252.7c6136c4/v2 -i v2 -p debug=+vcl_keep -p debug=+vmod_so_keep -p debug=+vsm_keep -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0',PROXY -M '127.0.0.1 45329' -P /tmp/vtc.31252.7c6136c4/v2/varnishd.pid \r\n***  v2    PID: 31281\r\n**** v2    macro def v2_pid=31281\r\n**** v2    macro def v2_name=/tmp/vtc.31252.7c6136c4/v2\r\n**** dT    0.226\r\n***  v2    debug|Debug: Version: varnish-7.3.0 revision 84d79120b6d17b11819a663a93160743f293e63f\r\n***  v2    debug|Debug: Platform: Linux,6.1.11-arch1-1,x86_64,-junix,-sdefault,-sdefault,-hcritbit\r\n***  v2    debug|200 315     \r\n***  v2    debug|-----------------------------\r\n***  v2    debug|Varnish Cache CLI 1.0\r\n***  v2    debug|-----------------------------\r\n***  v2    debug|Linux,6.1.11-arch1-1,x86_64,-junix,-sdefault,-sdefault,-hcritbit\r\n***  v2    debug|varnish-7.3.0 revision 84d79120b6d17b11819a663a93160743f293e63f\r\n***  v2    debug|\r\n***  v2    debug|Type 'help' for command list.\r\n***  v2    debug|Type 'quit' to close CLI session.\r\n***  v2    debug|Type 'start' to launch worker process.\r\n***  v2    debug|\r\n**** dT    0.325\r\n**** v2    CLIPOLL 1 0x1 0x0 0x0\r\n***  v2    CLI connection fd = 7\r\n***  v2    CLI RX  107\r\n**** v2    CLI RX|tpbjefitubonnjbuqolncwowdyrfjdyh\r\n**** v2    CLI RX|\r\n**** v2    CLI RX|Authentication required.\r\n**** v2    CLI TX|auth d37955cd96eb9ec6ae08fedc09e18c6ffcf62bd5fbc1526bc3ef40c651cb3a9b\r\n**** dT    0.326\r\n***  v2    CLI RX  200\r\n**** v2    CLI RX|-----------------------------\r\n**** v2    CLI RX|Varnish Cache CLI 1.0\r\n**** v2    CLI RX|-----------------------------\r\n**** v2    CLI RX|Linux,6.1.11-arch1-1,x86_64,-junix,-sdefault,-sdefault,-hcritbit\r\n**** v2    CLI RX|varnish-7.3.0 revision 84d79120b6d17b11819a663a93160743f293e63f\r\n**** v2    CLI RX|\r\n**** v2    CLI RX|Type 'help' for command list.\r\n**** v2    CLI RX|Type 'quit' to close CLI session.\r\n**** v2    CLI RX|Type 'start' to launch worker process.\r\n**** v2    CLI TX|vcl.inline vcl1 << %XJEIFLH|)Xspa8P\r\n**** v2    CLI TX|vcl 4.1;\r\n**** v2    CLI TX|\r\n**** v2    CLI TX|\\timport dynamic from \"/tmp/module_to_build/src/.libs/libvmod_dynamic.so\";\r\n**** v2    CLI TX|\\timport std;\r\n**** v2    CLI TX|\\timport proxy;\r\n**** v2    CLI TX|\r\n**** v2    CLI TX|\\tbackend dummy { .host = \"127.0.0.1:37455\"; }\r\n**** v2    CLI TX|\r\n**** v2    CLI TX|\\tsub vcl_init {\r\n**** v2    CLI TX|\\t\\tnew d1 = dynamic.director();\r\n**** v2    CLI TX|\\t}\r\n**** v2    CLI TX|\r\n**** v2    CLI TX|\\tsub vcl_recv {\r\n**** v2    CLI TX|\\t\\tset req.backend_hint = d1.backend(server.ip,\r\n**** v2    CLI TX|\\t\\t    std.port(server.ip));\r\n**** v2    CLI TX|\\t\\tset req.http.Authority = proxy.authority();\r\n**** v2    CLI TX|\r\n**** v2    CLI TX|\\t\\treturn (pass);\r\n**** v2    CLI TX|\\t}\r\n**** v2    CLI TX|\r\n**** v2    CLI TX|\\tsub vcl_deliver {\r\n**** v2    CLI TX|\\t\\tset resp.http.Authority = req.http.Authority;\r\n**** v2    CLI TX|\\t}\r\n**** v2    CLI TX|\r\n**** v2    CLI TX|%XJEIFLH|)Xspa8P\r\n**** dT    0.426\r\n***  v2    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.526\r\n***  v2    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.606\r\n***  v2    CLI RX  200\r\n**** v2    CLI RX|VCL compiled.\r\n**** v2    CLI TX|vcl.use vcl1\r\n***  v2    CLI RX  200\r\n**** v2    CLI RX|VCL 'vcl1' now active\r\n**   v2    Start\r\n**** v2    CLI TX|start\r\n**** dT    0.626\r\n***  v2    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.649\r\n***  v2    debug|Debug: Child (31370) Started\r\n**** dT    0.673\r\n***  v2    debug|Child launched OK\r\n**** dT    0.678\r\n***  v2    debug|Info: Child (31370) said Child starts\r\n***  v2    CLI RX  200\r\n***  v2    wait-running\r\n**** v2    CLI TX|status\r\n**** dT    0.721\r\n***  v2    CLI RX  200\r\n**** v2    CLI RX|Child in state running\r\n**** v2    CLI TX|debug.listen_address\r\n**** dT    0.727\r\n**** v2    vsl|          0 CLI             - Rd vcl.load \"vcl1\" vcl_vcl1.1679028965.187541/vgc.so 1auto\r\n**** v2    vsl|          0 CLI             - Wr 200 52 Loaded \"vcl_vcl1.1679028965.187541/vgc.so\" as \"vcl1\"\r\n**** v2    vsl|          0 CLI             - Rd vcl.use \"vcl1\"\r\n**** v2    vsl|          0 CLI             - Wr 200 0 \r\n**** v2    vsl|          0 CLI             - Rd start\r\n**** v2    vsl|          0 Debug           - sockopt: Setting SO_LINGER for a0=127.0.0.1:35713\r\n**** v2    vsl|          0 Debug           - sockopt: Setting SO_KEEPALIVE for a0=127.0.0.1:35713\r\n**** v2    vsl|          0 Debug           - sockopt: Setting SO_SNDTIMEO for a0=127.0.0.1:35713\r\n**** v2    vsl|          0 Debug           - sockopt: Setting SO_RCVTIMEO for a0=127.0.0.1:35713\r\n**** v2    vsl|          0 Debug           - sockopt: Setting TCP_NODELAY for a0=127.0.0.1:35713\r\n**** v2    vsl|          0 Debug           - sockopt: Setting TCP_KEEPIDLE for a0=127.0.0.1:35713\r\n**** v2    vsl|          0 Debug           - sockopt: Setting TCP_KEEPCNT for a0=127.0.0.1:35713\r\n**** v2    vsl|          0 Debug           - sockopt: Setting TCP_KEEPINTVL for a0=127.0.0.1:35713\r\n**** v2    vsl|          0 CLI             - Wr 200 0 \r\n**** dT    0.764\r\n***  v2    CLI RX  200\r\n**** v2    CLI RX|a0 127.0.0.1 35713\r\n**** v2    CLI TX|debug.xid 1000\r\n**** dT    0.811\r\n***  v2    CLI RX  200\r\n**** v2    CLI RX|XID is 1000 chunk 1\r\n**** v2    CLI TX|debug.listen_address\r\n**** dT    0.827\r\n**** v2    vsl|          0 CLI             - Rd debug.listen_address \r\n**** v2    vsl|          0 CLI             - Wr 200 19 a0 127.0.0.1 35713\r\n\r\n**** v2    vsl|          0 CLI             - Rd debug.xid 1000 \r\n**** v2    vsl|          0 CLI             - Wr 200 19 XID is 1000 chunk 1\r\n**** dT    0.854\r\n***  v2    CLI RX  200\r\n**** v2    CLI RX|a0 127.0.0.1 35713\r\n**   v2    Listen on 127.0.0.1 35713\r\n**** v2    macro def v2_addr=127.0.0.1\r\n**** v2    macro def v2_port=35713\r\n**** v2    macro def v2_sock=127.0.0.1:35713\r\n**** v2    macro def v2_a0_addr=127.0.0.1\r\n**** v2    macro def v2_a0_port=35713\r\n**** v2    macro def v2_a0_sock=127.0.0.1:35713\r\n**   top   === varnish v1 -vcl {\r\n**** dT    0.857\r\n**   v1    Launch\r\n***  v1    CMD: cd ${pwd} && exec varnishd  -d -n /tmp/vtc.31252.7c6136c4/v1 -i v1 -p debug=+vcl_keep -p debug=+vmod_so_keep -p debug=+vsm_keep -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0' -M '127.0.0.1 33113' -P /tmp/vtc.31252.7c6136c4/v1/varnishd.pid \r\n***  v1    CMD: cd /tmp/module_to_build/src && exec varnishd  -d -n /tmp/vtc.31252.7c6136c4/v1 -i v1 -p debug=+vcl_keep -p debug=+vmod_so_keep -p debug=+vsm_keep -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0' -M '127.0.0.1 33113' -P /tmp/vtc.31252.7c6136c4/v1/varnishd.pid \r\n***  v1    PID: 31413\r\n**** v1    macro def v1_pid=31413\r\n**** v1    macro def v1_name=/tmp/vtc.31252.7c6136c4/v1\r\n**** dT    0.866\r\n***  v1    debug|Debug: Version: varnish-7.3.0 revision 84d79120b6d17b11819a663a93160743f293e63f\r\n***  v1    debug|Debug: Platform: Linux,6.1.11-arch1-1,x86_64,-junix,-sdefault,-sdefault,-hcritbit\r\n***  v1    debug|200 315     \r\n***  v1    debug|-----------------------------\r\n***  v1    debug|Varnish Cache CLI 1.0\r\n***  v1    debug|-----------------------------\r\n***  v1    debug|Linux,6.1.11-arch1-1,x86_64,-junix,-sdefault,-sdefault,-hcritbit\r\n***  v1    debug|varnish-7.3.0 revision 84d79120b6d17b11819a663a93160743f293e63f\r\n***  v1    debug|\r\n***  v1    debug|Type 'help' for command list.\r\n***  v1    debug|Type 'quit' to close CLI session.\r\n***  v1    debug|Type 'start' to launch worker process.\r\n***  v1    debug|\r\n**** dT    0.927\r\n**** v2    vsl|          0 CLI             - Rd debug.listen_address \r\n**** v2    vsl|          0 CLI             - Wr 200 19 a0 127.0.0.1 35713\r\n\r\n**** dT    0.966\r\n**** v1    CLIPOLL 1 0x1 0x0 0x0\r\n***  v1    CLI connection fd = 18\r\n***  v1    CLI RX  107\r\n**** v1    CLI RX|sivrodaptpqwhiockdagcddondbmlnoq\r\n**** v1    CLI RX|\r\n**** v1    CLI RX|Authentication required.\r\n**** v1    CLI TX|auth d2c2d189e19fd9551e2913d49c42111c030d1fc301821431c9802913b9bf5307\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|-----------------------------\r\n**** v1    CLI RX|Varnish Cache CLI 1.0\r\n**** v1    CLI RX|-----------------------------\r\n**** v1    CLI RX|Linux,6.1.11-arch1-1,x86_64,-junix,-sdefault,-sdefault,-hcritbit\r\n**** v1    CLI RX|varnish-7.3.0 revision 84d79120b6d17b11819a663a93160743f293e63f\r\n**** v1    CLI RX|\r\n**** v1    CLI RX|Type 'help' for command list.\r\n**** v1    CLI RX|Type 'quit' to close CLI session.\r\n**** v1    CLI RX|Type 'start' to launch worker process.\r\n**** dT    0.967\r\n**** v1    CLI TX|vcl.inline vcl1 << %XJEIFLH|)Xspa8P\r\n**** v1    CLI TX|vcl 4.1;\r\n**** v1    CLI TX|\r\n**** v1    CLI TX|\\timport dynamic from \"/tmp/module_to_build/src/.libs/libvmod_dynamic.so\";\r\n**** v1    CLI TX|\r\n**** v1    CLI TX|\\tbackend v2 { .host = \"127.0.0.1\"; .port = \"35713\"; }\r\n**** v1    CLI TX|\r\n**** v1    CLI TX|\\tsub vcl_init {\r\n**** v1    CLI TX|\\t\\tnew d1 = dynamic.director(\r\n**** v1    CLI TX|\\t\\t    port = \"41173\",\r\n**** v1    CLI TX|\\t\\t    via = v2);\r\n**** v1    CLI TX|\\t}\r\n**** v1    CLI TX|\r\n**** v1    CLI TX|\\tsub vcl_recv {\r\n**** v1    CLI TX|\\t\\tset req.backend_hint = d1.backend(\"localhost\");\r\n**** v1    CLI TX|\\t}\r\n**** v1    CLI TX|\r\n**** v1    CLI TX|\\tsub vcl_backend_error {\r\n**** v1    CLI TX|\\t\\t# the director may resolve ::1 first\r\n**** v1    CLI TX|\\t\\treturn (retry);\r\n**** v1    CLI TX|\\t}\r\n**** v1    CLI TX|\r\n**** v1    CLI TX|%XJEIFLH|)Xspa8P\r\n**** dT    1.067\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    1.167\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    1.228\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|VCL compiled.\r\n**** v1    CLI TX|vcl.use vcl1\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|VCL 'vcl1' now active\r\n**   v1    Start\r\n**** v1    CLI TX|start\r\n**** dT    1.267\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    1.272\r\n***  v1    debug|Debug: Child (31486) Started\r\n**** dT    1.297\r\n***  v1    debug|Child launched OK\r\n**** dT    1.301\r\n***  v1    CLI RX  200\r\n***  v1    debug|Info: Child (31486) said Child starts\r\n***  v1    wait-running\r\n**** v1    CLI TX|status\r\n**** dT    1.344\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|Child in state running\r\n**** v1    CLI TX|debug.listen_address\r\n**** dT    1.367\r\n**** v1    vsl|          0 CLI             - Rd vcl.load \"vcl1\" vcl_vcl1.1679028965.828132/vgc.so 1auto\r\n**** v1    vsl|          0 CLI             - Wr 200 52 Loaded \"vcl_vcl1.1679028965.828132/vgc.so\" as \"vcl1\"\r\n**** v1    vsl|          0 CLI             - Rd vcl.use \"vcl1\"\r\n**** v1    vsl|          0 CLI             - Wr 200 0 \r\n**** v1    vsl|          0 CLI             - Rd start\r\n**** v1    vsl|          0 Debug           - sockopt: Setting SO_LINGER for a0=127.0.0.1:44415\r\n**** v1    vsl|          0 Debug           - sockopt: Setting SO_KEEPALIVE for a0=127.0.0.1:44415\r\n**** v1    vsl|          0 Debug           - sockopt: Setting SO_SNDTIMEO for a0=127.0.0.1:44415\r\n**** v1    vsl|          0 Debug           - sockopt: Setting SO_RCVTIMEO for a0=127.0.0.1:44415\r\n**** v1    vsl|          0 Debug           - sockopt: Setting TCP_NODELAY for a0=127.0.0.1:44415\r\n**** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPIDLE for a0=127.0.0.1:44415\r\n**** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPCNT for a0=127.0.0.1:44415\r\n**** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPINTVL for a0=127.0.0.1:44415\r\n**** v1    vsl|          0 CLI             - Wr 200 0 \r\n**** dT    1.391\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|a0 127.0.0.1 44415\r\n**** v1    CLI TX|debug.xid 1000\r\n**** dT    1.434\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|XID is 1000 chunk 1\r\n**** v1    CLI TX|debug.listen_address\r\n**** dT    1.467\r\n**** v1    vsl|          0 CLI             - Rd debug.listen_address \r\n**** v1    vsl|          0 CLI             - Wr 200 19 a0 127.0.0.1 44415\r\n\r\n**** v1    vsl|          0 CLI             - Rd debug.xid 1000 \r\n**** v1    vsl|          0 CLI             - Wr 200 19 XID is 1000 chunk 1\r\n**** dT    1.477\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|a0 127.0.0.1 44415\r\n**   v1    Listen on 127.0.0.1 44415\r\n**** v1    macro def v1_addr=127.0.0.1\r\n**** v1    macro def v1_port=44415\r\n**** v1    macro def v1_sock=127.0.0.1:44415\r\n**** v1    macro def v1_a0_addr=127.0.0.1\r\n**** v1    macro def v1_a0_port=44415\r\n**** v1    macro def v1_a0_sock=127.0.0.1:44415\r\n**   top   === client c1 {\r\n**   c1    Starting client\r\n**   c1    Waiting for client\r\n**   c1    Started on 127.0.0.1:44415 (1 iterations)\r\n***  c1    Connect to 127.0.0.1:44415\r\n***  c1    connected fd 28 from 127.0.0.1 38040 to 127.0.0.1:44415\r\n**** dT    1.478\r\n**   c1    === txreq\r\n**** c1    txreq|GET / HTTP/1.1\\r\r\n**** c1    txreq|Host: 127.0.0.1\\r\r\n**** c1    txreq|\\r\r\n**   c1    === rxresp\r\n**** dT    1.480\r\n**** c1    rxhdr|HTTP/1.1 503 Backend fetch failed\\r\r\n**** c1    rxhdr|Date: Fri, 17 Mar 2023 04:56:06 GMT\\r\r\n**** c1    rxhdr|Server: Varnish\\r\r\n**** c1    rxhdr|Content-Type: text/html; charset=utf-8\\r\r\n**** c1    rxhdr|Retry-After: 5\\r\r\n**** c1    rxhdr|X-Varnish: 1001\\r\r\n**** c1    rxhdr|Authority: localhost\\r\r\n**** c1    rxhdr|Content-Length: 281\\r\r\n**** c1    rxhdr|X-Varnish: 1001\\r\r\n**** c1    rxhdr|Age: 0\\r\r\n**** c1    rxhdr|Via: 1.1 v2 (Varnish/7.3), 1.1 v1 (Varnish/7.3)\\r\r\n**** c1    rxhdr|Connection: keep-alive\\r\r\n**** c1    rxhdr|\\r\r\n**** c1    rxhdrlen = 305\r\n**** c1    http[ 0] |HTTP/1.1\r\n**** c1    http[ 1] |503\r\n**** c1    http[ 2] |Backend fetch failed\r\n**** c1    http[ 3] |Date: Fri, 17 Mar 2023 04:56:06 GMT\r\n**** c1    http[ 4] |Server: Varnish\r\n**** c1    http[ 5] |Content-Type: text/html; charset=utf-8\r\n**** c1    http[ 6] |Retry-After: 5\r\n**** c1    http[ 7] |X-Varnish: 1001\r\n**** c1    http[ 8] |Authority: localhost\r\n**** c1    http[ 9] |Content-Length: 281\r\n**** c1    http[10] |X-Varnish: 1001\r\n**** c1    http[11] |Age: 0\r\n**** c1    http[12] |Via: 1.1 v2 (Varnish/7.3), 1.1 v1 (Varnish/7.3)\r\n**** c1    http[13] |Connection: keep-alive\r\n**** c1    c-l|<!DOCTYPE html>\r\n**** c1    c-l|<html>\r\n**** c1    c-l|  <head>\r\n**** c1    c-l|    <title>503 Backend fetch failed</title>\r\n**** c1    c-l|  </head>\r\n**** c1    c-l|  <body>\r\n**** c1    c-l|    <h1>Error 503 Backend fetch failed</h1>\r\n**** c1    c-l|    <p>Backend fetch failed</p>\r\n**** c1    c-l|    <h3>Guru Meditation:</h3>\r\n**** c1    c-l|    <p>XID: 1002</p>\r\n**** c1    c-l|    <hr>\r\n**** c1    c-l|    <p>Varnish cache server</p>\r\n**** c1    c-l|  </body>\r\n**** c1    c-l|</html>\r\n**** c1    bodylen = 281\r\n**   c1    === expect resp.status == 200\r\n---- c1    EXPECT resp.status (503) == \"200\" failed\r\n*    top   RESETTING after ./tests/via.vtc\r\n**   s1    Waiting for server (4/-1)\r\n**   v2    Wait\r\n**** v2    CLI TX|panic.show\r\n**** dT    1.524\r\n***  v2    CLI RX  300\r\n**** v2    CLI RX|Child has not panicked or panic has been cleared\r\n***  v2    debug|Info: manager stopping child\r\n***  v2    debug|Debug: Stopping Child\r\n**** dT    1.528\r\n**** v2    vsl|       1000 Begin           c sess 0 PROXY\r\n**** v2    vsl|       1000 SessOpen        c 127.0.0.1 59120 a0 127.0.0.1 35713 1679028966.339887 19\r\n**** v2    vsl|       1000 Debug           c sockopt: SO_LINGER may be inherited for a0=127.0.0.1:35713\r\n**** v2    vsl|       1000 Debug           c sockopt: SO_KEEPALIVE may be inherited for a0=127.0.0.1:35713\r\n**** v2    vsl|       1000 Debug           c sockopt: SO_SNDTIMEO may be inherited for a0=127.0.0.1:35713\r\n**** v2    vsl|       1000 Debug           c sockopt: SO_RCVTIMEO may be inherited for a0=127.0.0.1:35713\r\n**** v2    vsl|       1000 Debug           c sockopt: TCP_NODELAY may be inherited for a0=127.0.0.1:35713\r\n**** v2    vsl|       1000 Debug           c sockopt: TCP_KEEPIDLE may be inherited for a0=127.0.0.1:35713\r\n**** v2    vsl|       1000 Debug           c sockopt: TCP_KEEPCNT may be inherited for a0=127.0.0.1:35713\r\n**** v2    vsl|       1000 Debug           c sockopt: TCP_KEEPINTVL may be inherited for a0=127.0.0.1:35713\r\n**** v2    vsl|       1000 Proxy           c 2 :: 0 ::1 41173\r\n**** v2    vsl|       1000 Link            c req 1001 rxreq\r\n**** v2    vsl|          0 Timestamp       - vmod-dynamic vcl1.d1(::1:41173) Lookup: 1679028966.340034 0.000000 0.000000\r\n**** v2    vsl|          0 Timestamp       - vmod-dynamic vcl1.d1(::1:41173) Results: 1679028966.340130 0.000096 0.000096\r\n**** v2    vsl|          0 Timestamp       - vmod-dynamic vcl1.d1(::1:41173) Update: 1679028966.340295 0.000261 0.000165\r\n**** v2    vsl|       1002 Begin           b bereq 1001 pass\r\n**** v2    vsl|       1002 VCL_use         b vcl1\r\n**** v2    vsl|       1002 Timestamp       b Start: 1679028966.340091 0.000000 0.000000\r\n**** v2    vsl|       1002 BereqMethod     b GET\r\n**** v2    vsl|       1002 BereqURL        b /\r\n**** v2    vsl|       1002 BereqProtocol   b HTTP/1.1\r\n**** v2    vsl|       1002 BereqHeader     b Host: 127.0.0.1\r\n**** v2    vsl|       1002 BereqHeader     b Accept-Encoding: gzip\r\n**** v2    vsl|       1002 BereqHeader     b X-Varnish: 1002\r\n**** v2    vsl|       1002 BereqHeader     b X-Forwarded-For: 127.0.0.1, ::\r\n**** v2    vsl|       1002 BereqHeader     b Via: 1.1 v1 (Varnish/7.3), 1.1 v2 (Varnish/7.3)\r\n**** v2    vsl|       1002 BereqHeader     b Authority: localhost\r\n**** v2    vsl|       1002 BereqHeader     b X-Varnish: 1002\r\n**** v2    vsl|       1002 VCL_call        b BACKEND_FETCH\r\n**** v2    vsl|       1002 VCL_return      b fetch\r\n**** v2    vsl|       1002 Timestamp       b Fetch: 1679028966.340108 0.000017 0.000017\r\n**** v2    vsl|       1002 FetchError      b backend d1(::1:41173): fail errno 99 (Cannot assign requested address)\r\n**** v2    vsl|       1002 Timestamp       b Beresp: 1679028966.340422 0.000331 0.000313\r\n**** v2    vsl|       1002 Timestamp       b Error: 1679028966.340424 0.000333 0.000002\r\n**** v2    vsl|       1002 BerespProtocol  b HTTP/1.1\r\n**** v2    vsl|       1002 BerespStatus    b 503\r\n**** v2    vsl|       1002 BerespReason    b Backend fetch failed\r\n**** v2    vsl|       1002 BerespHeader    b Date: Fri, 17 Mar 2023 04:56:06 GMT\r\n**** v2    vsl|       1002 BerespHeader    b Server: Varnish\r\n**** v2    vsl|       1002 VCL_call        b BACKEND_ERROR\r\n**** v2    vsl|       1002 BerespHeader    b Content-Type: text/html; charset=utf-8\r\n**** v2    vsl|       1002 BerespHeader    b Retry-After: 5\r\n**** v2    vsl|       1002 VCL_return      b deliver\r\n**** v2    vsl|       1002 Storage         b malloc Transient\r\n**** v2    vsl|       1002 Length          b 281\r\n**** v2    vsl|       1002 BereqAcct       b 0 0 0 0 0 0\r\n**** v2    vsl|       1002 End             b \r\n**** v2    vsl|       1001 Begin           c req 1000 rxreq\r\n**** v2    vsl|       1001 Timestamp       c Start: 1679028966.339929 0.000000 0.000000\r\n**** v2    vsl|       1001 Timestamp       c Req: 1679028966.339929 0.000000 0.000000\r\n**** v2    vsl|       1001 VCL_use         c vcl1\r\n**** v2    vsl|       1001 ReqStart        c :: 0 a0\r\n**** v2    vsl|       1001 ReqMethod       c GET\r\n**** v2    vsl|       1001 ReqURL          c /\r\n**** v2    vsl|       1001 ReqProtocol     c HTTP/1.1\r\n**** v2    vsl|       1001 ReqHeader       c Host: 127.0.0.1\r\n**** v2    vsl|       1001 ReqHeader       c X-Forwarded-For: 127.0.0.1\r\n**** v2    vsl|       1001 ReqHeader       c Via: 1.1 v1 (Varnish/7.3)\r\n**** v2    vsl|       1001 ReqHeader       c Accept-Encoding: gzip\r\n**** v2    vsl|       1001 ReqHeader       c X-Varnish: 1002\r\n**** v2    vsl|       1001 ReqUnset        c X-Forwarded-For: 127.0.0.1\r\n**** v2    vsl|       1001 ReqHeader       c X-Forwarded-For: 127.0.0.1, ::\r\n**** v2    vsl|       1001 ReqUnset        c Via: 1.1 v1 (Varnish/7.3)\r\n**** v2    vsl|       1001 ReqHeader       c Via: 1.1 v1 (Varnish/7.3), 1.1 v2 (Varnish/7.3)\r\n**** v2    vsl|       1001 VCL_call        c RECV\r\n**** v2    vsl|       1001 ReqHeader       c Authority: localhost\r\n**** v2    vsl|       1001 VCL_return      c pass\r\n**** v2    vsl|       1001 VCL_call        c HASH\r\n**** v2    vsl|       1001 VCL_return      c lookup\r\n**** v2    vsl|       1001 VCL_call        c PASS\r\n**** v2    vsl|       1001 VCL_return      c fetch\r\n**** v2    vsl|       1001 Link            c bereq 1002 pass\r\n**** v2    vsl|       1001 Timestamp       c Fetch: 1679028966.340555 0.000625 0.000625\r\n**** v2    vsl|       1001 RespProtocol    c HTTP/1.1\r\n**** v2    vsl|       1001 RespStatus      c 503\r\n**** v2    vsl|       1001 RespReason      c Backend fetch failed\r\n**** v2    vsl|       1001 RespHeader      c Date: Fri, 17 Mar 2023 04:56:06 GMT\r\n**** v2    vsl|       1001 RespHeader      c Server: Varnish\r\n**** v2    vsl|       1001 RespHeader      c Content-Type: text/html; charset=utf-8\r\n**** v2    vsl|       1001 RespHeader      c Retry-After: 5\r\n**** v2    vsl|       1001 RespHeader      c X-Varnish: 1001\r\n**** v2    vsl|       1001 RespHeader      c Age: 0\r\n**** v2    vsl|       1001 RespHeader      c Via: 1.1 v2 (Varnish/7.3)\r\n**** v2    vsl|       1001 VCL_call        c DELIVER\r\n**** v2    vsl|       1001 RespHeader      c Authority: localhost\r\n**** v2    vsl|       1001 VCL_return      c deliver\r\n**** v2    vsl|       1001 Timestamp       c Process: 1679028966.340574 0.000644 0.000018\r\n**** v2    vsl|       1001 Filters         c \r\n**** v2    vsl|       1001 RespHeader      c Content-Length: 281\r\n**** v2    vsl|       1001 RespHeader      c Connection: keep-alive\r\n**** v2    vsl|       1001 Timestamp       c Resp: 1679028966.340619 0.000689 0.000045\r\n**** v2    vsl|       1001 ReqAcct         c 130 0 130 266 281 547\r\n**** v2    vsl|       1001 End             c \r\n**** v2    vsl|          0 CLI             - EOF on CLI connection, worker stops\r\n**** dT    1.567\r\n**** v1    vsl|          0 CLI             - Rd debug.listen_address \r\n**** v1    vsl|          0 CLI             - Wr 200 19 a0 127.0.0.1 44415\r\n\r\n**** v1    vsl|       1000 Begin           c sess 0 HTTP/1\r\n**** v1    vsl|       1000 SessOpen        c 127.0.0.1 38040 a0 127.0.0.1 44415 1679028966.339009 19\r\n**** v1    vsl|       1000 Debug           c sockopt: SO_LINGER may be inherited for a0=127.0.0.1:44415\r\n**** v1    vsl|       1000 Debug           c sockopt: SO_KEEPALIVE may be inherited for a0=127.0.0.1:44415\r\n**** v1    vsl|       1000 Debug           c sockopt: SO_SNDTIMEO may be inherited for a0=127.0.0.1:44415\r\n**** v1    vsl|       1000 Debug           c sockopt: SO_RCVTIMEO may be inherited for a0=127.0.0.1:44415\r\n**** v1    vsl|       1000 Debug           c sockopt: TCP_NODELAY may be inherited for a0=127.0.0.1:44415\r\n**** v1    vsl|       1000 Debug           c sockopt: TCP_KEEPIDLE may be inherited for a0=127.0.0.1:44415\r\n**** v1    vsl|       1000 Debug           c sockopt: TCP_KEEPCNT may be inherited for a0=127.0.0.1:44415\r\n**** v1    vsl|       1000 Debug           c sockopt: TCP_KEEPINTVL may be inherited for a0=127.0.0.1:44415\r\n**** v1    vsl|       1000 Link            c req 1001 rxreq\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.d1(localhost:41173) Lookup: 1679028966.339141 0.000000 0.000000\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.d1(localhost:41173) Results: 1679028966.339372 0.000231 0.000231\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.d1(localhost:41173) Update: 1679028966.339616 0.000475 0.000244\r\n**** v1    vsl|       1002 Begin           b bereq 1001 fetch\r\n**** v1    vsl|       1002 VCL_use         b vcl1\r\n**** v1    vsl|       1002 Timestamp       b Start: 1679028966.339237 0.000000 0.000000\r\n**** v1    vsl|       1002 BereqMethod     b GET\r\n**** v1    vsl|       1002 BereqURL        b /\r\n**** v1    vsl|       1002 BereqProtocol   b HTTP/1.1\r\n**** v1    vsl|       1002 BereqHeader     b Host: 127.0.0.1\r\n**** v1    vsl|       1002 BereqHeader     b X-Forwarded-For: 127.0.0.1\r\n**** dT    1.568\r\n**** v1    vsl|       1002 BereqHeader     b Via: 1.1 v1 (Varnish/7.3)\r\n**** v1    vsl|       1002 BereqHeader     b Accept-Encoding: gzip\r\n**** v1    vsl|       1002 BereqHeader     b X-Varnish: 1002\r\n**** v1    vsl|       1002 VCL_call        b BACKEND_FETCH\r\n**** v1    vsl|       1002 VCL_return      b fetch\r\n**** v1    vsl|       1002 Timestamp       b Fetch: 1679028966.339257 0.000019 0.000019\r\n**** v1    vsl|       1002 Timestamp       b Connected: 1679028966.339806 0.000568 0.000549\r\n**** v1    vsl|       1002 BackendOpen     b 25 d1.localhost(::1:41173) 127.0.0.1 35713 127.0.0.1 59120 connect\r\n**** v1    vsl|       1002 Timestamp       b Bereq: 1679028966.339835 0.000597 0.000028\r\n**** v1    vsl|       1002 BerespProtocol  b HTTP/1.1\r\n**** v1    vsl|       1002 BerespStatus    b 503\r\n**** v1    vsl|       1002 BerespReason    b Backend fetch failed\r\n**** v1    vsl|       1002 BerespHeader    b Date: Fri, 17 Mar 2023 04:56:06 GMT\r\n**** v1    vsl|       1002 BerespHeader    b Server: Varnish\r\n**** v1    vsl|       1002 BerespHeader    b Content-Type: text/html; charset=utf-8\r\n**** v1    vsl|       1002 BerespHeader    b Retry-After: 5\r\n**** v1    vsl|       1002 BerespHeader    b X-Varnish: 1001\r\n**** v1    vsl|       1002 BerespHeader    b Age: 0\r\n**** v1    vsl|       1002 BerespHeader    b Via: 1.1 v2 (Varnish/7.3)\r\n**** v1    vsl|       1002 BerespHeader    b Authority: localhost\r\n**** v1    vsl|       1002 BerespHeader    b Content-Length: 281\r\n**** v1    vsl|       1002 BerespHeader    b Connection: keep-alive\r\n**** v1    vsl|       1002 Timestamp       b Beresp: 1679028966.340633 0.001396 0.000798\r\n**** v1    vsl|       1002 TTL             b RFC -1 10 0 1679028966 1679028966 1679028966 0 0 cacheable\r\n**** v1    vsl|       1002 VCL_call        b BACKEND_RESPONSE\r\n**** v1    vsl|       1002 TTL             b VCL 120 10 0 1679028966 cacheable\r\n**** v1    vsl|       1002 TTL             b VCL 120 10 0 1679028966 uncacheable\r\n**** v1    vsl|       1002 VCL_return      b deliver\r\n**** v1    vsl|       1002 Timestamp       b Process: 1679028966.340654 0.001416 0.000020\r\n**** v1    vsl|       1002 Filters         b \r\n**** v1    vsl|       1002 Storage         b malloc Transient\r\n**** v1    vsl|       1002 Fetch_Body      b 3 length stream\r\n**** v1    vsl|       1002 BackendClose    b 25 d1.localhost(::1:41173) recycle\r\n**** v1    vsl|       1002 Timestamp       b BerespBody: 1679028966.350797 0.011559 0.010143\r\n**** v1    vsl|       1002 Length          b 281\r\n**** v1    vsl|       1002 BereqAcct       b 130 0 130 266 281 547\r\n**** v1    vsl|       1002 End             b \r\n**** v1    vsl|       1001 Begin           c req 1000 rxreq\r\n**** v1    vsl|       1001 Timestamp       c Start: 1679028966.339053 0.000000 0.000000\r\n**** v1    vsl|       1001 Timestamp       c Req: 1679028966.339053 0.000000 0.000000\r\n**** v1    vsl|       1001 VCL_use         c vcl1\r\n**** v1    vsl|       1001 ReqStart        c 127.0.0.1 38040 a0\r\n**** v1    vsl|       1001 ReqMethod       c GET\r\n**** v1    vsl|       1001 ReqURL          c /\r\n**** v1    vsl|       1001 ReqProtocol     c HTTP/1.1\r\n**** v1    vsl|       1001 ReqHeader       c Host: 127.0.0.1\r\n**** v1    vsl|       1001 ReqHeader       c X-Forwarded-For: 127.0.0.1\r\n**** v1    vsl|       1001 ReqHeader       c Via: 1.1 v1 (Varnish/7.3)\r\n**** v1    vsl|       1001 VCL_call        c RECV\r\n**** v1    vsl|       1001 VCL_return      c hash\r\n**** v1    vsl|       1001 VCL_call        c HASH\r\n**** v1    vsl|       1001 VCL_return      c lookup\r\n**** v1    vsl|       1001 VCL_call        c MISS\r\n**** v1    vsl|       1001 VCL_return      c fetch\r\n**** v1    vsl|       1001 Link            c bereq 1002 fetch\r\n**** v1    vsl|       1001 Timestamp       c Fetch: 1679028966.340701 0.001648 0.001648\r\n**** v1    vsl|       1001 RespProtocol    c HTTP/1.1\r\n**** v1    vsl|       1001 RespStatus      c 503\r\n**** v1    vsl|       1001 RespReason      c Backend fetch failed\r\n**** v1    vsl|       1001 RespHeader      c Date: Fri, 17 Mar 2023 04:56:06 GMT\r\n**** v1    vsl|       1001 RespHeader      c Server: Varnish\r\n**** v1    vsl|       1001 RespHeader      c Content-Type: text/html; charset=utf-8\r\n**** v1    vsl|       1001 RespHeader      c Retry-After: 5\r\n**** v1    vsl|       1001 RespHeader      c X-Varnish: 1001\r\n**** v1    vsl|       1001 RespHeader      c Via: 1.1 v2 (Varnish/7.3)\r\n**** v1    vsl|       1001 RespHeader      c Authority: localhost\r\n**** v1    vsl|       1001 RespHeader      c Content-Length: 281\r\n**** v1    vsl|       1001 RespHeader      c X-Varnish: 1001\r\n**** v1    vsl|       1001 RespHeader      c Age: 0\r\n**** v1    vsl|       1001 RespUnset       c Via: 1.1 v2 (Varnish/7.3)\r\n**** v1    vsl|       1001 RespHeader      c Via: 1.1 v2 (Varnish/7.3), 1.1 v1 (Varnish/7.3)\r\n**** v1    vsl|       1001 VCL_call        c DELIVER\r\n**** v1    vsl|       1001 VCL_return      c deliver\r\n**** v1    vsl|       1001 Timestamp       c Process: 1679028966.340725 0.001672 0.000023\r\n**** v1    vsl|       1001 Filters         c \r\n**** v1    vsl|       1001 RespHeader      c Connection: keep-alive\r\n**** v1    vsl|       1001 Timestamp       c Resp: 1679028966.350810 0.011757 0.010085\r\n**** v1    vsl|       1001 ReqAcct         c 35 0 35 305 281 586\r\n**** v1    vsl|       1001 End             c \r\n**** dT    1.624\r\n***  v2    debug|Info: Child (31370) ended\r\n***  v2    debug|Info: Child (31370) said Child dies\r\n***  v2    debug|Debug: Child cleanup complete\r\n***  v2    debug|Info: manager dies\r\n**** dT    1.625\r\n**** v2    STDOUT EOF\r\n**** dT    1.628\r\n**   v2    WAIT4 pid=31281 status=0x0000 (user 0.259649 sys 0.048448)\r\n**   v1    Wait\r\n**** v1    CLI TX|panic.show\r\n**** dT    1.671\r\n***  v1    CLI RX  300\r\n**** v1    CLI RX|Child has not panicked or panic has been cleared\r\n***  v1    debug|Info: manager stopping child\r\n***  v1    debug|Debug: Stopping Child\r\n**** dT    1.768\r\n**** v1    vsl|          0 CLI             - EOF on CLI connection, worker stops\r\n**** dT    1.771\r\n***  v1    debug|Info: Child (31486) ended\r\n***  v1    debug|Info: Child (31486) said Child dies\r\n***  v1    debug|Debug: Child cleanup complete\r\n***  v1    debug|Info: manager dies\r\n**** dT    1.772\r\n**** v1    STDOUT EOF\r\n**** dT    1.868\r\n**   v1    WAIT4 pid=31413 status=0x0000 (user 0.236578 sys 0.053338)\r\n*    top   TEST ./tests/via.vtc FAILED\r\n#    top  TEST ./tests/via.vtc FAILED (1.869) exit=2\r\nFAIL tests/via.vtc (exit status: 2)\r\n\r\n```","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/97/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/97/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/98","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/98/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/98/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/98/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/98","id":1628706525,"node_id":"PR_kwDOBBOOTM5MRmCZ","number":98,"title":"shell -> feature cmd","user":{"login":"gquintard","id":3776553,"node_id":"MDQ6VXNlcjM3NzY1NTM=","avatar_url":"https://avatars.githubusercontent.com/u/3776553?v=4","gravatar_id":"","url":"https://api.github.com/users/gquintard","html_url":"https://github.com/gquintard","followers_url":"https://api.github.com/users/gquintard/followers","following_url":"https://api.github.com/users/gquintard/following{/other_user}","gists_url":"https://api.github.com/users/gquintard/gists{/gist_id}","starred_url":"https://api.github.com/users/gquintard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gquintard/subscriptions","organizations_url":"https://api.github.com/users/gquintard/orgs","repos_url":"https://api.github.com/users/gquintard/repos","events_url":"https://api.github.com/users/gquintard/events{/privacy}","received_events_url":"https://api.github.com/users/gquintard/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2023-03-17T05:15:33Z","updated_at":"2023-03-22T00:19:21Z","closed_at":"2023-03-21T18:27:53Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/98","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/98","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/98.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/98.patch","merged_at":"2023-03-21T18:27:53Z"},"body":"hopefuly, it's the correct fix for https://github.com/nigoroll/libvmod-dynamic/issues/97","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/98/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/98/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/99","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/99/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/99/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/99/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/99","id":1733615949,"node_id":"I_kwDOBBOOTM5nVOFN","number":99,"title":"Varnish 7.3","user":{"login":"ronald-sz","id":97725423,"node_id":"U_kgDOBdMr7w","avatar_url":"https://avatars.githubusercontent.com/u/97725423?v=4","gravatar_id":"","url":"https://api.github.com/users/ronald-sz","html_url":"https://github.com/ronald-sz","followers_url":"https://api.github.com/users/ronald-sz/followers","following_url":"https://api.github.com/users/ronald-sz/following{/other_user}","gists_url":"https://api.github.com/users/ronald-sz/gists{/gist_id}","starred_url":"https://api.github.com/users/ronald-sz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronald-sz/subscriptions","organizations_url":"https://api.github.com/users/ronald-sz/orgs","repos_url":"https://api.github.com/users/ronald-sz/repos","events_url":"https://api.github.com/users/ronald-sz/events{/privacy}","received_events_url":"https://api.github.com/users/ronald-sz/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2023-05-31T08:04:47Z","updated_at":"2023-07-04T17:34:03Z","closed_at":"2023-07-04T17:01:09Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi Nils, \r\n\r\nis master ready for Varnish 7.3? Could you please create a branch for 7.3?\r\n\r\nAll the best,\r\nRonald","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/99/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/99/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/100","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/100/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/100/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/100/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/100","id":1799293379,"node_id":"I_kwDOBBOOTM5rPwnD","number":100,"title":"Assert error in VBP_Remove()","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":2228316027,"node_id":"MDU6TGFiZWwyMjI4MzE2MDI3","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/needs%20varnish-cache","name":"needs varnish-cache","color":"006b75","default":false,"description":"needs work in varnish-cache"}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2023-07-11T16:16:29Z","updated_at":"2023-07-17T13:21:14Z","closed_at":"2023-07-17T13:21:14Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Seen with ad2285bb5915ceee6949f02bdca15333bdd159d5 on varnish-cache [69fe28ffd981a3714f32faa54a4c47c6c5f1753e](https://github.com/nigoroll/varnish-cache/tree/unmerged_code_20230704_185303), which is based on 48681cc872c17d339bb6ddb47304db0685e844ba:\r\n\r\n```\r\n  0x4f0dba: /opt/varnish/sbin/varnishd() [0x4f0dba]\r\nAssert error in VBP_Remove(), cache/cache_backend_probe.c line 718:\r\n  Condition(vt->heap_idx == VBH_NOIDX) not true.\r\nversion = varnish-trunk revision 69fe28ffd981a3714f32faa54a4c47c6c5f1753e, vrt api = 17.0\r\nident = Linux,3.10.0-862.14.4.el7.x86_64,x86_64,-jnone,-smalloc,-sdefault,-hcritbit,epoll\r\nnow = 146369807.049963 (mono), 1689082818.407869 (real)\r\nBacktrace:\r\n  0x44e3c2: /opt/varnish/sbin/varnishd() [0x44e3c2]\r\n  0x44eacf: /opt/varnish/sbin/varnishd() [0x44eacf]\r\n  0x4ee962: /opt/varnish/sbin/varnishd(VAS_Fail+0x53) [0x4ee962]\r\n  0x41fb40: /opt/varnish/sbin/varnishd(VBP_Remove+0x15f) [0x41fb40]\r\n  0x41bdd7: /opt/varnish/sbin/varnishd() [0x41bdd7]\r\n  0x41bf4a: /opt/varnish/sbin/varnishd() [0x41bf4a]\r\n  0x4751d6: /opt/varnish/sbin/varnishd() [0x4751d6]\r\n  0x4752fa: /opt/varnish/sbin/varnishd() [0x4752fa]\r\n  0x4755aa: /opt/varnish/sbin/varnishd(VRT_Assign_Backend+0x12b) [0x4755aa]\r\n  0x7f9d011eaded: ./vmod_cache/_vmod_dynamic.5658350bfea26ceaa0bf26746c43cfa37683f4f5a1d373819db83c01b95cee9a(+0x6ded) [0x7f9d011eaded]\r\n  0x475421: /opt/varnish/sbin/varnishd(VRT_DelDirector+0x122) [0x475421]\r\n  0x7f9d011eaa30: ./vmod_cache/_vmod_dynamic.5658350bfea26ceaa0bf26746c43cfa37683f4f5a1d373819db83c01b95cee9a(+0x6a30) [0x7f9d011eaa30]\r\n  0x7f9d011ec527: ./vmod_cache/_vmod_dynamic.5658350bfea26ceaa0bf26746c43cfa37683f4f5a1d373819db83c01b95cee9a(vmod_event+0x437) [0x7f9d011ec527]\r\n  0x7f9d115143cd: vcl_boot.1688716416.512333/vgc.so(+0xba3cd) [0x7f9d115143cd]\r\n  0x45f67d: /opt/varnish/sbin/varnishd() [0x45f67d]\r\n  0x460b0e: /opt/varnish/sbin/varnishd() [0x460b0e]\r\n  0x461d82: /opt/varnish/sbin/varnishd() [0x461d82]\r\n  0x4f049c: /opt/varnish/sbin/varnishd() [0x4f049c]\r\n  0x4f0810: /opt/varnish/sbin/varnishd() [0x4f0810]\r\n  0x4f0dba: /opt/varnish/sbin/varnishd() [0x4f0dba]\r\n```","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/100/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/100/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/101","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/101/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/101/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/101/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/101","id":1800366045,"node_id":"I_kwDOBBOOTM5rT2fd","number":101,"title":"Hang & child cli timeout/quit related to VRT_Healthy","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2023-07-12T07:32:02Z","updated_at":"2023-07-12T08:00:09Z","closed_at":"2023-07-12T08:00:08Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Seen with aa7919e76a3184d158a4d7f1698ad8925353d4b4 on varnish-cache [unmerged_code_20230711_235413](https://github.com/nigoroll/varnish-cache/tree/unmerged_code_20230711_235413) which is based on d99f62a9c5d4c6de492abae63510555d51a53324\r\n\r\n```\r\nPanic at: Wed, 12 Jul 2023 07:18:04 GMT\r\nWrong turn at cache/cache_main.c:375:\r\nIt's time for the big quit\r\nversion = varnish-trunk revision eb42e0a09dec02915caf6b821ff531f3d684de5b, vrt api = 17.0\r\nident = Linux,3.10.0-862.14.4.el7.x86_64,x86_64,-jnone,-smalloc,-sdefault,-hcritbit,epoll\r\nnow = 146433270.810059 (mono), 1689146282.167964 (real)\r\nBacktrace:\r\n  0x44e46c: /opt/varnish/sbin/varnishd() [0x44e46c]\r\n  0x44eb79: /opt/varnish/sbin/varnishd() [0x44eb79]\r\n  0x4eec40: /opt/varnish/sbin/varnishd(VAS_Fail+0x53) [0x4eec40]\r\n  0x448264: /opt/varnish/sbin/varnishd() [0x448264]\r\n  0x7f41e457c400: /lib64/libc.so.6(+0x36400) [0x7f41e457c400]\r\n  0x7f41e491fa33: /lib64/libpthread.so.0(pthread_cond_wait+0xc3) [0x7f41e491fa33]\r\n  0x447169: /opt/varnish/sbin/varnishd(Lck_CondWaitUntil+0x141) [0x447169]\r\n  0x446f57: /opt/varnish/sbin/varnishd(Lck_CondWait+0x27) [0x446f57]\r\n  0x7f41c358cd0c: ./vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4(+0x7d0c) [0x7f41c358cd0c]\r\n  0x42b27b: /opt/varnish/sbin/varnishd(VRT_Healthy+0x15e) [0x42b27b]\r\n  0x7f41c4fc4591: ./vmod_cache/_vmod_directors.edab1c2b46260ba7857d12e0b786d29b78460cd930959505a67272486eac4683(+0x3591) [0x7f41c4fc4591]\r\n  0x7f41c4fc4d37: ./vmod_cache/_vmod_directors.edab1c2b46260ba7857d12e0b786d29b78460cd930959505a67272486eac4683(+0x3d37) [0x7f41c4fc4d37]\r\n  0x42b6f1: /opt/varnish/sbin/varnishd() [0x42b6f1]\r\n  0x45ff11: /opt/varnish/sbin/varnishd() [0x45ff11]\r\n  0x46017b: /opt/varnish/sbin/varnishd(VCL_IterDirector+0x23e) [0x46017b]\r\n  0x42bf2c: /opt/varnish/sbin/varnishd() [0x42bf2c]\r\n  0x4f077a: /opt/varnish/sbin/varnishd() [0x4f077a]\r\n  0x4f0aee: /opt/varnish/sbin/varnishd() [0x4f0aee]\r\n  0x4f1098: /opt/varnish/sbin/varnishd() [0x4f1098]\r\n  0x4f2183: /opt/varnish/sbin/varnishd(VCLS_Poll+0x2c6) [0x4f2183]\r\n  ```","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/101/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/101/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/102","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/102/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/102/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/102/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/102","id":1801475335,"node_id":"I_kwDOBBOOTM5rYFUH","number":102,"title":"Director Layering triggers domain_timeout, consequently no backend is returned","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":443804422,"node_id":"MDU6TGFiZWw0NDM4MDQ0MjI=","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/bug","name":"bug","color":"ee0701","default":true,"description":null}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2023-07-12T17:49:01Z","updated_at":"2023-07-14T13:33:39Z","closed_at":"2023-07-14T13:33:39Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"When layering a dynamic director under another director, the last use is not updated and, when the domain timeout expires, the director stops returning backends (`FetchError     Director ONTOP returned no backend` with `ONTOP` being the director having configured a dynamic domain as a backend).\r\nI guess this use case makes the whole concept of a domain timeout useless, but I'll need to ponder this for a bit.","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/102/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/102/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/103","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/103/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/103/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/103/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/103","id":1820210930,"node_id":"PR_kwDOBBOOTM5WU6-n","number":103,"title":"Add resolver fallback to the null resolver (getaddrinfo)","user":{"login":"delthas","id":1863865,"node_id":"MDQ6VXNlcjE4NjM4NjU=","avatar_url":"https://avatars.githubusercontent.com/u/1863865?v=4","gravatar_id":"","url":"https://api.github.com/users/delthas","html_url":"https://github.com/delthas","followers_url":"https://api.github.com/users/delthas/followers","following_url":"https://api.github.com/users/delthas/following{/other_user}","gists_url":"https://api.github.com/users/delthas/gists{/gist_id}","starred_url":"https://api.github.com/users/delthas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/delthas/subscriptions","organizations_url":"https://api.github.com/users/delthas/orgs","repos_url":"https://api.github.com/users/delthas/repos","events_url":"https://api.github.com/users/delthas/events{/privacy}","received_events_url":"https://api.github.com/users/delthas/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2023-07-25T12:22:05Z","updated_at":"2024-01-28T19:21:27Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/103","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/103","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/103.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/103.patch","merged_at":null},"body":"This enables a best-effort, two-step resolution when a resolver is configured:\r\n- if the DNS resolver returns any domain, that record is used with its corresponding TTL\r\n- otherwise, the module tries resolving the name with the default, NULL resolver, which is just a wrapper over getaddrinfo\r\n  * if the resolution succeeds, this was likely a domain in /etc/hosts or an IP literal, which was not known by the DNS server. The associated record has no TTL value and uses the default director TTL.\r\n  * if the resolution fails, this was likely a bad domain. No records are stored and a new request is made after the default director TTL, as was done previously.\r\n\r\n-----\r\n\r\nThe patch is somewhat dumb, it just wraps the resolve logic in a loop that can iterate twice. The goal was to minimize the size of `git diff -w`.\r\n\r\nThis causes the module to log Lookup & Results & Error twice in case we do the fallback attempt, which could be a nice side-effect (we can investigate a DNS error in varnishlog but see that it still succeeded). I don't have a strong opinion about this one.\r\n\r\nFeel free to amend and merge if you'd like. Otherwise I can make changes. :smile: ","closed_by":null,"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/103/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/103/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/104","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/104/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/104/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/104/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/104","id":1913624666,"node_id":"I_kwDOBBOOTM5yD5ha","number":104,"title":"implicit declaration of function 'IS_CLI'","user":{"login":"BernardRobbins","id":959230,"node_id":"MDQ6VXNlcjk1OTIzMA==","avatar_url":"https://avatars.githubusercontent.com/u/959230?v=4","gravatar_id":"","url":"https://api.github.com/users/BernardRobbins","html_url":"https://github.com/BernardRobbins","followers_url":"https://api.github.com/users/BernardRobbins/followers","following_url":"https://api.github.com/users/BernardRobbins/following{/other_user}","gists_url":"https://api.github.com/users/BernardRobbins/gists{/gist_id}","starred_url":"https://api.github.com/users/BernardRobbins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BernardRobbins/subscriptions","organizations_url":"https://api.github.com/users/BernardRobbins/orgs","repos_url":"https://api.github.com/users/BernardRobbins/repos","events_url":"https://api.github.com/users/BernardRobbins/events{/privacy}","received_events_url":"https://api.github.com/users/BernardRobbins/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2023-09-26T14:19:06Z","updated_at":"2023-09-26T14:29:16Z","closed_at":"2023-09-26T14:29:16Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Compiling varnish 7.3 & libvmod-dynamic-master from source on AL2023.\r\nVarnish is running fine.\r\n\r\nRunning make gives me this error:\r\n\r\n`make[2]: Entering directory '/home/ec2-user/libvmod-dynamic-master/src'\r\n  CC       vmod_dynamic.lo\r\nvmod_dynamic.c: In function 'dom_healthy':\r\nvmod_dynamic.c:319:31: error: implicit declaration of function 'IS_CLI' [-Werror=implicit-function-declaration]\r\n  319 |                 if (retval || IS_CLI())\r\n      |                               ^~~~~~\r\ncc1: all warnings being treated as errors\r\nmake[2]: *** [Makefile:708: vmod_dynamic.lo] Error 1\r\nmake[2]: Leaving directory '/home/ec2-user/libvmod-dynamic-master/src'\r\nmake[1]: *** [Makefile:500: all-recursive] Error 1\r\nmake[1]: Leaving directory '/home/ec2-user/libvmod-dynamic-master'\r\nmake: *** [Makefile:411: all] Error 2\r\n`\r\n\r\nmake -v\r\nGNU Make 4.3\r\nBuilt for x86_64-amazon-linux-gnu\r\n\r\nvarnishd -V\r\nvarnishd (varnish-7.3.0 revision 84d79120b6d17b11819a663a93160743f293e63f)\r\n\r\ngcc -v\r\ngcc version 11.4.1 20230605 (Red Hat 11.4.1-2) (GCC)","closed_by":{"login":"BernardRobbins","id":959230,"node_id":"MDQ6VXNlcjk1OTIzMA==","avatar_url":"https://avatars.githubusercontent.com/u/959230?v=4","gravatar_id":"","url":"https://api.github.com/users/BernardRobbins","html_url":"https://github.com/BernardRobbins","followers_url":"https://api.github.com/users/BernardRobbins/followers","following_url":"https://api.github.com/users/BernardRobbins/following{/other_user}","gists_url":"https://api.github.com/users/BernardRobbins/gists{/gist_id}","starred_url":"https://api.github.com/users/BernardRobbins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BernardRobbins/subscriptions","organizations_url":"https://api.github.com/users/BernardRobbins/orgs","repos_url":"https://api.github.com/users/BernardRobbins/repos","events_url":"https://api.github.com/users/BernardRobbins/events{/privacy}","received_events_url":"https://api.github.com/users/BernardRobbins/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/104/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/104/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/105","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/105/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/105/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/105/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/105","id":1931814034,"node_id":"I_kwDOBBOOTM5zJSSS","number":105,"title":"assertion `(dom->status == DYNAMIC_ST_STARTING)` failing sporadically","user":{"login":"kaiburjack","id":72760888,"node_id":"MDQ6VXNlcjcyNzYwODg4","avatar_url":"https://avatars.githubusercontent.com/u/72760888?v=4","gravatar_id":"","url":"https://api.github.com/users/kaiburjack","html_url":"https://github.com/kaiburjack","followers_url":"https://api.github.com/users/kaiburjack/followers","following_url":"https://api.github.com/users/kaiburjack/following{/other_user}","gists_url":"https://api.github.com/users/kaiburjack/gists{/gist_id}","starred_url":"https://api.github.com/users/kaiburjack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kaiburjack/subscriptions","organizations_url":"https://api.github.com/users/kaiburjack/orgs","repos_url":"https://api.github.com/users/kaiburjack/repos","events_url":"https://api.github.com/users/kaiburjack/events{/privacy}","received_events_url":"https://api.github.com/users/kaiburjack/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2023-10-08T13:53:12Z","updated_at":"2023-10-17T09:28:29Z","closed_at":"2023-10-17T09:21:42Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"## Description\r\n\r\nWe are currently evaluating Varnish as a cache behind an ingress in our Kubernetes setup.\r\nFor this, we use the varnish:7.4.1-alpine Docker image, which also contains this libvmod-dynamic module.\r\nWe then use a very simple VCL to begin with:\r\n```\r\nvcl 4.1;\r\nimport dynamic;\r\nbackend default none;\r\nsub vcl_init {\r\n  new d = dynamic.director(port = \"80\");\r\n}\r\nsub vcl_recv {\r\n  set req.backend_hint = d.backend(req.http.host);\r\n}\r\n```\r\nAs a side-note: This is also used with an Istio service mesh, so in the end Istio will determine the actual destination IP to route to after Varnish sends the request to the supposed `req.http.host` backend based on the HTTP Host/Authority header.\r\n\r\nSo far so good. Everything works well but occasionally we see this assertion failing:\r\nhttps://github.com/nigoroll/libvmod-dynamic/blob/master/src/vmod_dynamic.c#L788\r\n\r\nThis does not happen very often (only about 1 or 2 times a day), but it does happen and I wonder, why.\r\n\r\n## Initial analysis\r\n\r\nLooking at the code, the function where this assertion fails is the entrypoint function for a pthread spawned by https://github.com/nigoroll/libvmod-dynamic/blob/master/src/vmod_dynamic.c#L1012 .\r\n\r\nBefore the thread is spawned, the `dom->status` is set to the asserted `DYNAMIC_ST_STARTING;`.\r\n\r\nAnd both the writing and reading of `dom->status` are covered by a lock/mutex.\r\nAnd there is definitely a happens-before relation between the code setting `dom->status = DYNAMIC_ST_STARTING;` and the pthread function seeing the value of `dom->status`.\r\n*However* there is no guarantee that another event in `dom_event` might not set a _different_ value for `dom->status` after the processing of the `VCL_EVENT_WARM` event and the effective start of the pthread function in a separately spawned thread. Could there be maybe a `VCL_EVENT_COLD` event fired right after the `VCL_EVENT_WARM` which would set `dom->status` again to a different value, making the assertion then fail?\r\n\r\nComing to think of the actual assertion `dom->status == DYNAMIC_ST_STARTING`: What is being asserted there and why?\r\nBecause the while loop directly afterwards will also check if the condition for whether the thread should run is still true `while (dom->status <= DYNAMIC_ST_ACTIVE) {` and I think this would also cover the check of `status == DYNAMIC_ST_STARTING`, since `DYNAMIC_ST_STARTING <= DYNAMIC_ST_ACTIVE` would be true as well.\r\n\r\n## stdout/stderr output of Varnish\r\n\r\nThe following are what Varnish's container will output to stdout/stderr when the assertion fails and the child process is killed and restarted:\r\n```\r\nError: Child (254) died signal=6\r\nError: Child (254) Panic at: Sat, 07 Oct 2023 22:15:50 GMT\r\nAssert error in dom_lookup_thread(), vmod_dynamic.c line 788:\r\n  Condition(dom->status == DYNAMIC_ST_STARTING) not true.\r\nversion = varnish-7.4.1 revision d5a5aa9cc879320840ca467ddbb7df0f99c9ba0f, vrt api = 18.0\r\nident = Linux,5.15.120+,x86_64,-jnone,-smalloc,-sdefault,-hcritbit,epoll\r\nnow = 1659349.487516 (mono), 1696716950.705925 (real)\r\nBacktrace:\r\n  ip=0x5ccdac571cdf sp=0x7b10d72ae240\r\n  ip=0x5ccdac5d089b sp=0x7b10d72ae390\r\n  ip=0x7b10d75e061c sp=0x7b10d72ae3d0 <dom_lookup_thread+0x140c>\r\n  ip=0x7b10dde66285 sp=0x7b10d72aeac0 <pthread_exit+0x277>\r\nargv = {\r\n  [0] = \\\"varnishd\\\",\r\n  [1] = \\\"-F\\\",\r\n  [2] = \\\"-f\\\",\r\n  [3] = \\\"/etc/varnish/default.vcl\\\",\r\n  [4] = \\\"-a\\\",\r\n  [5] = \\\"http=:8080,HTTP\\\",\r\n  [6] = \\\"-a\\\",\r\n  [7] = \\\"proxy=:8443,PROXY\\\",\r\n  [8] = \\\"-p\\\",\r\n  [9] = \\\"feature=+http2\\\",\r\n  [10] = \\\"-s\\\",\r\n  [11] = \\\"malloc,1073741824\\\",\r\n  [12] = \\\"-n\\\",\r\n  [13] = \\\"/tmp/varnish_workdir\\\",\r\n  [14] = \\\"-t\\\",\r\n  [15] = \\\"5s\\\",\r\n  [16] = \\\"-p\\\",\r\n  [17] = \\\"default_grace=10s\\\",\r\n  [18] = \\\"-p\\\",\r\n  [19] = \\\"default_keep=0s\\\",\r\n}\r\npthread.self = 0x7b10d72aeb38\r\npthread.attr = {\r\n  guard = 8192,\r\n  stack_bottom = 0x7b10d728e000,\r\n  stack_top = 0x7b10d72aeb08,\r\n  stack_size = 133896,\r\n}\r\nthr.req = NULL\r\nthr.busyobj = NULL\r\nthr.worker = NULL\r\nvmods = {\r\n  std = {0x7b10d858cbc0, Varnish 7.4.1 d5a5aa9cc879320840ca467ddbb7df0f99c9ba0f, 0.0},\r\n  dynamic = {0x7b10d858cc30, Varnish 7.4.1 d5a5aa9cc879320840ca467ddbb7df0f99c9ba0f, 18.0},\r\n  basicauth = {0x7b10d858cca0, Varnish 7.4.1 d5a5aa9cc879320840ca467ddbb7df0f99c9ba0f, 0.0},\r\n},\r\npools = {\r\n  pool = 0x7b10d8c68c20 {\r\n    nidle = 93,\r\n    nthr = 100,\r\n    lqueue = 0\r\n  },\r\n  pool = 0x7b10d8c68d50 {\r\n    nidle = 96,\r\n    nthr = 100,\r\n    lqueue = 0\r\n  },\r\n},\r\n\r\n\r\nDebug: Child cleanup complete\r\nDebug: Child (480) Started\r\nChild launched OK\r\nInfo: Child (480) said Child starts\r\n```","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/105/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/105/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/106","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/106/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/106/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/106/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/106","id":2057031869,"node_id":"I_kwDOBBOOTM56m9C9","number":106,"title":"Varnish 7.4","user":{"login":"ronald-sz","id":97725423,"node_id":"U_kgDOBdMr7w","avatar_url":"https://avatars.githubusercontent.com/u/97725423?v=4","gravatar_id":"","url":"https://api.github.com/users/ronald-sz","html_url":"https://github.com/ronald-sz","followers_url":"https://api.github.com/users/ronald-sz/followers","following_url":"https://api.github.com/users/ronald-sz/following{/other_user}","gists_url":"https://api.github.com/users/ronald-sz/gists{/gist_id}","starred_url":"https://api.github.com/users/ronald-sz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronald-sz/subscriptions","organizations_url":"https://api.github.com/users/ronald-sz/orgs","repos_url":"https://api.github.com/users/ronald-sz/repos","events_url":"https://api.github.com/users/ronald-sz/events{/privacy}","received_events_url":"https://api.github.com/users/ronald-sz/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2023-12-27T07:44:20Z","updated_at":"2024-01-28T19:19:35Z","closed_at":"2024-01-09T15:37:31Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi Nils,\r\n\r\nis master ready for Varnish 7.4? Could you please create a branch for 7.4?\r\n\r\nThank you and all the best,\r\nRonald","closed_by":{"login":"ronald-sz","id":97725423,"node_id":"U_kgDOBdMr7w","avatar_url":"https://avatars.githubusercontent.com/u/97725423?v=4","gravatar_id":"","url":"https://api.github.com/users/ronald-sz","html_url":"https://github.com/ronald-sz","followers_url":"https://api.github.com/users/ronald-sz/followers","following_url":"https://api.github.com/users/ronald-sz/following{/other_user}","gists_url":"https://api.github.com/users/ronald-sz/gists{/gist_id}","starred_url":"https://api.github.com/users/ronald-sz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronald-sz/subscriptions","organizations_url":"https://api.github.com/users/ronald-sz/orgs","repos_url":"https://api.github.com/users/ronald-sz/repos","events_url":"https://api.github.com/users/ronald-sz/events{/privacy}","received_events_url":"https://api.github.com/users/ronald-sz/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/106/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/106/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/107","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/107/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/107/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/107/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/107","id":2067347632,"node_id":"I_kwDOBBOOTM57OTiw","number":107,"title":"Assert error in dom_release(): Condition((dom->thread) == 0) not true","user":{"login":"delthas","id":1863865,"node_id":"MDQ6VXNlcjE4NjM4NjU=","avatar_url":"https://avatars.githubusercontent.com/u/1863865?v=4","gravatar_id":"","url":"https://api.github.com/users/delthas","html_url":"https://github.com/delthas","followers_url":"https://api.github.com/users/delthas/followers","following_url":"https://api.github.com/users/delthas/following{/other_user}","gists_url":"https://api.github.com/users/delthas/gists{/gist_id}","starred_url":"https://api.github.com/users/delthas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/delthas/subscriptions","organizations_url":"https://api.github.com/users/delthas/orgs","repos_url":"https://api.github.com/users/delthas/repos","events_url":"https://api.github.com/users/delthas/events{/privacy}","received_events_url":"https://api.github.com/users/delthas/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"assignees":[{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false}],"milestone":null,"comments":5,"created_at":"2024-01-05T13:24:41Z","updated_at":"2024-01-05T20:55:40Z","closed_at":"2024-01-05T20:54:53Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi,\r\n\r\n*(Following our discussion on IRC, I'm opening an issue.)*\r\n\r\nI got a panic in libvmod-dynamic after reloading Varnish (varnishreload, so loading a new VCL, using it, and discarding an older one), running https://github.com/nigoroll/libvmod-dynamic/commit/2d51da74680e849c8411bcd6d85cd53c149b3052 against Varnish 7.3.0.\r\n\r\nLooks like the panic is caused when handling a VCL_EVENT_COLD event, when releasing a dynamic director.\r\n\r\nPanic annotated with some locations:\r\n```\r\nAssert error in dom_release(), vmod_dynamic.c line 952:\r\n  Condition((dom->thread) == 0) not true.\r\nBacktrace:\r\n  0x5609d924f872: /usr/sbin/varnishd(+0x5b872) [0x5609d924f872] -> pan_ic\r\n  0x5609d92cc745: /usr/sbin/varnishd(VAS_Fail+0x45) [0x5609d92cc745]\r\n  0x7564a4065fe2: ./vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4(+0x4fe2) [0x7564a4065fe2] -> (dom_destroy ?) -> dom_release\r\n  0x5609d927186a: /usr/sbin/varnishd(+0x7d86a) [0x5609d927186a] -> vcldir_deref\r\n  0x7564a40662fa: ./vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4(+0x52fa) [0x7564a40662fa] (? guessed from the code) dynamic_stop -> dynamic_gc_expired -> dom_free -> VRT_DelDirector\r\n  0x7564a4069156: ./vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4(vmod_event+0x176) [0x7564a4069156] -> vmod_event (VCL_EVENT_COLD)\r\n  0x754e303bc5b5: vcl_reload_20231121_143229_2498323.1700577149.771996/vgc.so(+0x305b5) [0x754e303bc5b5]\r\n  0x5609d925fd71: /usr/sbin/varnishd(+0x6bd71) [0x5609d925fd71] -> vcl_send_event (VCL_EVENT_COLD)\r\n  0x5609d926027d: /usr/sbin/varnishd(+0x6c27d) [0x5609d926027d] -> vcl_set_state (0)\r\n  0x5609d9261fb8: /usr/sbin/varnishd(VCL_Poll+0xe8) [0x5609d9261fb8] -> VCL_Poll\r\n```\r\n\r\nAccording to our discussion on IRC; this could have been solved by https://github.com/nigoroll/libvmod-dynamic/commit/b54c48849a0ffb940f87d641c0b13584cb21540e, but I'm running a version after that commit.","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/107/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/107/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/108","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/108/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/108/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/108/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/108","id":2072231214,"node_id":"I_kwDOBBOOTM57g70u","number":108,"title":"Assert: Dynamic Backends can only be added to warm VCLs","user":{"login":"delthas","id":1863865,"node_id":"MDQ6VXNlcjE4NjM4NjU=","avatar_url":"https://avatars.githubusercontent.com/u/1863865?v=4","gravatar_id":"","url":"https://api.github.com/users/delthas","html_url":"https://github.com/delthas","followers_url":"https://api.github.com/users/delthas/followers","following_url":"https://api.github.com/users/delthas/following{/other_user}","gists_url":"https://api.github.com/users/delthas/gists{/gist_id}","starred_url":"https://api.github.com/users/delthas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/delthas/subscriptions","organizations_url":"https://api.github.com/users/delthas/orgs","repos_url":"https://api.github.com/users/delthas/repos","events_url":"https://api.github.com/users/delthas/events{/privacy}","received_events_url":"https://api.github.com/users/delthas/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"assignees":[{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false}],"milestone":null,"comments":4,"created_at":"2024-01-09T11:58:02Z","updated_at":"2024-05-27T10:40:50Z","closed_at":"2024-01-28T19:13:16Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"I got the following panic in production:\r\n```\r\nWrong turn at cache/cache_vrt_vcl.c:224:\r\nDynamic Backends can only be added to warm VCLs\r\nBacktrace:\r\n  0x557c3b6a7872: /usr/sbin/varnishd(+0x5b872) [0x557c3b6a7872]\r\n  0x557c3b724745: /usr/sbin/varnishd(VAS_Fail+0x45) [0x557c3b724745]\r\n  0x557c3b6cb1e1: /usr/sbin/varnishd(VRT_AddDirector+0x3d1) [0x557c3b6cb1e1]\r\n  0x557c3b67c023: /usr/sbin/varnishd(VRT_new_backend_clustered+0x4c3) [0x557c3b67c023]\r\n  0x7fc4469918b8: ./vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4(+0x68b8) [0x7fc4469918b8]\r\n  0x7fc45f817064: /lib/x86_64-linux-gnu/libpthread.so.0(+0x8064) [0x7fc45f817064]\r\n  0x7fc45f54c62d: /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7fc45f54c62d]\r\n```\r\nCall stack is probably: dom_lookup_thread -> dom_update -> ref_add -> VRT_new_backend -> VRT_new_backend_clustered -> VRT_AddDirector\r\n\r\nCould there possibly be a race condition between the lookup thread that could take a while to look up DNS records, then try to insert the new backends while the VCL was unloaded/set to cooling?\r\n","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/108/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/108/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/109","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/109/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/109/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/109/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/109","id":2082315931,"node_id":"I_kwDOBBOOTM58HZ6b","number":109,"title":"Assert error in ref_del(): Condition((r->dir) != NULL) not true","user":{"login":"delthas","id":1863865,"node_id":"MDQ6VXNlcjE4NjM4NjU=","avatar_url":"https://avatars.githubusercontent.com/u/1863865?v=4","gravatar_id":"","url":"https://api.github.com/users/delthas","html_url":"https://github.com/delthas","followers_url":"https://api.github.com/users/delthas/followers","following_url":"https://api.github.com/users/delthas/following{/other_user}","gists_url":"https://api.github.com/users/delthas/gists{/gist_id}","starred_url":"https://api.github.com/users/delthas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/delthas/subscriptions","organizations_url":"https://api.github.com/users/delthas/orgs","repos_url":"https://api.github.com/users/delthas/repos","events_url":"https://api.github.com/users/delthas/events{/privacy}","received_events_url":"https://api.github.com/users/delthas/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"assignees":[{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false}],"milestone":null,"comments":5,"created_at":"2024-01-15T16:03:07Z","updated_at":"2024-01-26T17:20:14Z","closed_at":"2024-01-26T17:14:29Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"I found an assert with a simple minimum working example.\r\n\r\nRunning against Varnish 7.4.2, against libvmod-dynamic master.\r\n\r\n```\r\nAssert error in ref_del(), vmod_dynamic.c line 427:\r\n  Condition((r->dir) != NULL) not true.\r\nBacktrace:\r\n  ip=0x5555555c669e sp=0x7fffffffba20 <pan_ic+0x34e>\r\n  ip=0x5555556966b5 sp=0x7fffffffbbb0 <VAS_Fail+0x55>\r\n  ip=0x7fffeab0dad7 sp=0x7fffffffbc00 <ref_del+0x1b7>\r\n  ip=0x7fffeab0e120 sp=0x7fffffffbc20 <dom_destroy+0xa0>\r\n  ip=0x5555556023fa sp=0x7fffffffbc50 <vcldir_retire+0x22a>\r\n  ip=0x5555555fd863 sp=0x7fffffffbc70 <vcldir_deref+0x163>\r\n  ip=0x5555555fda2e sp=0x7fffffffbc90 <VRT_Assign_Backend+0x1be>\r\n  ip=0x7fffeaa958ac sp=0x7fffffffbcc0 <vdir_release+0xbc>\r\n  ip=0x7fffeaa98435 sp=0x7fffffffbce0 <vmod_fallback_release+0x135>\r\n  ip=0x5555555fd67c sp=0x7fffffffbd00 <VRT_DelDirector+0x19c>\r\n  ip=0x7fffeaa97a5a sp=0x7fffffffbd30 <vmod_fallback__fini+0xfa>\r\n  ip=0x7fffeaa8c3bf sp=0x7fffffffbd50 <VGC_function_vcl_synth+0x45f>\r\n  ip=0x5555555e15ad sp=0x7fffffffbd70 <vcl_send_event+0x51d>\r\n  ip=0x5555555e082f sp=0x7fffffffbdd0 <VCL_Poll+0x3bf>\r\n  ip=0x5555555e2db3 sp=0x7fffffffbe10 <vcl_cli_discard+0x3d3>\r\n  ip=0x55555569b18c sp=0x7fffffffbe50 <cls_dispatch+0x22c>\r\n  ip=0x55555569ad67 sp=0x7fffffffbe80 <cls_exec+0x3c7>\r\n  ip=0x555555699ad9 sp=0x7fffffffbee0 <cls_feed+0x589>\r\n  ip=0x5555556994bf sp=0x7fffffffbf50 <VCLS_Poll+0x3bf>\r\n  ip=0x555555592704 sp=0x7fffffffdfb0 <CLI_Run+0xf4>\r\n  ip=0x5555555c07ac sp=0x7fffffffdfe0 <child_main+0x42c>\r\n  ip=0x5555556330e9 sp=0x7fffffffe040 <mgt_launch_child+0x6b9>\r\n  ip=0x555555632a01 sp=0x7fffffffe0c0 <MCH_Start_Child+0x11>\r\n  ip=0x55555563aa60 sp=0x7fffffffe0e0 <main+0x1a40>\r\n  ip=0x7ffff7958cd0 sp=0x7fffffffe320 <__libc_init_first+0x90>\r\n  ip=0x7ffff7958d8a sp=0x7fffffffe3c0 <__libc_start_main+0x8a>\r\n  ip=0x55555557ded5 sp=0x7fffffffe410 <_start+0x25>\r\n```\r\n\r\nThis happens when discarding a VCL.\r\n\r\n---\r\n\r\nTo reproduce, here's a failing VTC (timeout, but the process actually crashes)\r\n\r\n```\r\nvarnishtest \"reload\"\r\n\r\nshell {\r\n\tcat >${tmpdir}/f1 <<-EOF\r\n\tvcl 4.1;\r\n\timport ${vmod_dynamic};\r\n\timport directors;\r\n\r\n\tbackend none none;\r\n\r\n\tsub vcl_init {\r\n\t\tnew dir = directors.fallback();\r\n\t\tnew res = dynamic.resolver();\r\n\t\tnew dyn = dynamic.director(resolver = res.use());\r\n\t\tdir.add_backend(dyn.backend(host={\"example.com\"}, port={\"80\"}) );\r\n\t}\r\n\tEOF\r\n}\r\n\r\nvarnish v1 -cliok \"vcl.load vcl1 ${tmpdir}/f1\"\r\nvarnish v1 -cliok \"vcl.use vcl1\"\r\nvarnish v1 -cliok \"start\"\r\n\r\nvarnish v1 -cliok \"vcl.load vcl2 ${tmpdir}/f1\"\r\nvarnish v1 -cliok \"vcl.use vcl2\"\r\nvarnish v1 -cliok \"vcl.discard vcl1\"\r\n\r\nvarnish v1 -cliok \"vcl.load vcl3 ${tmpdir}/f1\"\r\nvarnish v1 -cliok \"vcl.use vcl3\"\r\nvarnish v1 -cliok \"vcl.discard vcl2\"\r\n\r\nvarnish v1 -cliok \"vcl.load vcl4 ${tmpdir}/f1\"\r\nvarnish v1 -cliok \"vcl.use vcl4\"\r\nvarnish v1 -cliok \"vcl.discard vcl3\"\r\n\r\nvarnish v1 -cliok \"vcl.load vcl5 ${tmpdir}/f1\"\r\nvarnish v1 -cliok \"vcl.use vcl5\"\r\nvarnish v1 -cliok \"vcl.discard vcl4\"\r\n```\r\n\r\n---\r\n\r\nYou can't see the panic when using the VTC, so I'm instead doing:\r\n\r\ncrash.vcl:\r\n```\r\nvcl 4.1;\r\nimport dynamic from \".../libvmod-dynamic/src/.libs/libvmod_dynamic.so\";\r\nimport directors;\r\n\r\nbackend proforma none;\r\n\r\nsub vcl_init {\r\n                new dir = directors.fallback();\r\n                new res = dynamic.resolver();\r\n                new dyn = dynamic.director(resolver = res.use());\r\n                dir.add_backend(dyn.backend(host={\"example.com\"}, port={\"80\"}) );\r\n}\r\n```\r\n\r\nreload.sh:\r\n```\r\n#!/bin/bash\r\nvarnishadm vcl.load v1 crash.vcl\r\nvarnishadm vcl.use v1\r\nvarnishadm vcl.discard boot\r\nfor i in $(seq 2 100); do\r\nvarnishadm vcl.load v$i crash.vcl\r\nvarnishadm vcl.use v$i\r\nvarnishadm vcl.discard v$((i-1))\r\nsleep 0.1\r\ndone\r\n```\r\n\r\n```\r\nvarnishd -F -j none -p \"debug=+vmod_so_keep\" -a :12333 -f crash.vcl\r\nreload.sh\r\n```\r\n\r\nAnd with this I can systematically reproduce the panic and get the trace.\r\n\r\n","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/109/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/109/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/110","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/110/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/110/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/110/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/110","id":2106304036,"node_id":"I_kwDOBBOOTM59i6Yk","number":110,"title":"deadlock between lookup thread / VRT_AddDirector() and VDI_Event(..., VCL_EVENT_COLD)","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2024-01-29T19:56:19Z","updated_at":"2024-02-05T23:46:49Z","closed_at":"2024-02-05T23:46:49Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"@delthas reported another issue based on a test case which I could have looked at in more detail earlier (I did not because I did not want to use `example.com`, but I really should have):\r\n\r\n(I have slightly modified the test case - @delthas, do you agree to add it?)\r\n\r\n```\r\nvarnishtest \"Reloading after creating backend in init\"\r\n\r\nfeature cmd \"getent hosts example.com\"\r\n\r\n# contributed by delthas, added with minor modifications\r\n\r\nshell {\r\n\tcat >${tmpdir}/f1 <<-EOF\r\n\tvcl 4.1;\r\n\timport ${vmod_dynamic};\r\n\timport directors;\r\n\r\n\tbackend none none;\r\n\r\n\tsub vcl_init {\r\n\t\tnew dir = directors.fallback();\r\n\t\tnew res = dynamic.resolver();\r\n\t\tnew dyn = dynamic.director(domain_usage_timeout = 0.1s, resolver = res.use());\r\n\t\tdir.add_backend(dyn.backend(host={\"example.com\"}, port={\"80\"}) );\r\n\t}\r\n\tEOF\r\n}\r\n\r\nvarnish v1 -cliok \"vcl.load vcl1 ${tmpdir}/f1\"\r\nvarnish v1 -cliok \"vcl.use vcl1\"\r\nvarnish v1 -cliok \"start\"\r\n\r\nvarnish v1 -cliok \"vcl.load vcl2 ${tmpdir}/f1\"\r\nvarnish v1 -cliok \"vcl.use vcl2\"\r\nvarnish v1 -cliok \"vcl.discard vcl1\"\r\n```\r\n\r\nthe issue here is that `VDI_Event(..., VCL_EVENT_COLD)` waits for the lookup threads to finish while holding the `vcl_mtx`, which prevents the lookup threads to ... finish:\r\n\r\n```c\r\n#5  0x00007fa9c72b0e76 in dom_event (dir=<optimized out>, ev=<optimized out>) at vmod_dynamic.c:1041\r\n#6  0x000055d6f1c1e84d in VDI_Event (d=0x7fa9c6e1e7d0, ev=VCL_EVENT_COLD) at cache/cache_director.c:277\r\n#7  0x000055d6f1c61bfc in vcl_BackendEvent (vcl=0x7fa9c6e451e0, e=VCL_EVENT_COLD) at cache/cache_vcl.c:449\r\n#8  0x000055d6f1c61068 in vcl_set_state (vcl=0x7fa9c6e451e0, state=0x7fa9c6e28390 \"0cold\", msg=0x7ffc69699e08) at cache/cache_vcl.c:597\r\n#9  0x000055d6f1c62905 in vcl_cli_state (cli=0x7fa9c6ed29d0, av=0x7fa9c6e2c580, priv=0x0) at cache/cache_vcl.c:861\r\n#10 0x000055d6f1d11f22 in cls_dispatch (cli=0x7fa9c6ed29d0, cs=0x7fa9c6e22b30, av=0x7fa9c6e2c580, ac=3) at vcli_serve.c:273\r\n#11 0x000055d6f1d11a0d in cls_exec (cfd=0x7fa9c6ed29a0, av=0x7fa9c6e2c580, ac=3) at vcli_serve.c:324\r\n#12 0x000055d6f1d108a6 in cls_feed (cfd=0x7fa9c6ed29a0, p=0x7ffc69699f94 \"\\n2.1706557731.695251/vgc.so 1auto\\no\\nloneTable\", \r\n    e=0x7ffc69699f95 \"2.1706557731.695251/vgc.so 1auto\\no\\nloneTable\") at vcli_serve.c:412\r\n#13 0x000055d6f1d1036a in VCLS_Poll (cs=0x7fa9c6e22b30, cli=0x7fa9c6ed29d0, timeout=-1) at vcli_serve.c:617\r\n#14 0x000055d6f1c18c12 in CLI_Run () at cache/cache_cli.c:110\r\n```\r\n\r\n```c\r\n#4  0x000055d6f1c40ca4 in Lck__Lock (lck=0x55d6f1db57f8 <vcl_mtx>, p=0x55d6f1d45aec \"VRT_AddDirector\", l=212) at cache/cache_lck.c:124\r\n#5  0x000055d6f1c7bfd3 in VRT_AddDirector (ctx=0x7fa9bbd7df90, m=0x55d6f1da7260 <vbe_methods_noprobe>, priv=0x7fa9ba821780, \r\n    fmt=0x55d6f1d42f7f \"%s\") at cache/cache_vrt_vcl.c:212\r\n#6  0x000055d6f1c09c4d in VRT_new_backend_clustered (ctx=0x7fa9bbd7df90, vc=0x0, vrt=0x7fa9bbd7deb0, via=0x0)\r\n    at cache/cache_backend.c:737\r\n#7  0x000055d6f1c0a632 in VRT_new_backend (ctx=0x7fa9bbd7df90, vrt=0x7fa9bbd7deb0, via=0x0) at cache/cache_backend.c:755\r\n#8  0x00007fa9c72b24b4 in ref_add (r=0x7fa9ba827720, ctx=0x7fa9bbd7df90) at vmod_dynamic.c:617\r\n#9  dom_update (now=1706557732.7551613, priv=<optimized out>, res=0x7fa9c72c2ba0 <res_getdns>, dom=0x7fa9c6e44100)\r\n    at vmod_dynamic.c:728\r\n#10 dom_lookup_thread (priv=0x7fa9c6e44100) at vmod_dynamic.c:819\r\n#11 0x00007fa9c77c9044 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442\r\n#12 0x00007fa9c784961c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81\r\n```\r\n","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/110/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/110/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/111","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/111/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/111/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/111/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/111","id":2138443008,"node_id":"I_kwDOBBOOTM5_dg0A","number":111,"title":"unit test issues tests/service/basic","user":{"login":"halittiryaki","id":29786283,"node_id":"MDQ6VXNlcjI5Nzg2Mjgz","avatar_url":"https://avatars.githubusercontent.com/u/29786283?v=4","gravatar_id":"","url":"https://api.github.com/users/halittiryaki","html_url":"https://github.com/halittiryaki","followers_url":"https://api.github.com/users/halittiryaki/followers","following_url":"https://api.github.com/users/halittiryaki/following{/other_user}","gists_url":"https://api.github.com/users/halittiryaki/gists{/gist_id}","starred_url":"https://api.github.com/users/halittiryaki/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/halittiryaki/subscriptions","organizations_url":"https://api.github.com/users/halittiryaki/orgs","repos_url":"https://api.github.com/users/halittiryaki/repos","events_url":"https://api.github.com/users/halittiryaki/events{/privacy}","received_events_url":"https://api.github.com/users/halittiryaki/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2024-02-16T11:49:12Z","updated_at":"2024-02-17T20:51:46Z","closed_at":"2024-02-17T20:51:46Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"tests/service/basic always fails. any ideas why?\r\n\r\nhere is the log output:\r\n\r\n```\r\n113.2 FAIL: tests/service/basic\r\n113.2 =========================\r\n113.2 \r\n113.2 **** dT    0.000\r\n113.2 *    top   TEST ./tests/service/basic.vtc starting\r\n113.2 **** top   extmacro def pkg_version=7.4.2\r\n113.2 **** top   extmacro def pkg_branch=7.4\r\n113.2 **** top   extmacro def pwd=/usr/src/libvmod-dynamic/src\r\n113.2 **** top   extmacro def date(...)\r\n113.2 **** top   extmacro def string(...)\r\n113.2 **** top   extmacro def vmod_dynamic=dynamic from \"/usr/src/libvmod-dynamic/src/.libs/libvmod_dynamic.so\"\r\n113.2 **** top   extmacro def localhost=127.0.0.1\r\n113.2 **** top   extmacro def bad_backend=127.0.0.1:34783\r\n113.2 **** top   extmacro def listen_addr=127.0.0.1:0\r\n113.2 **** top   extmacro def bad_ip=192.0.2.255\r\n113.2 **** top   macro def testdir=/usr/src/libvmod-dynamic/src/./tests/service\r\n113.2 **** top   macro def tmpdir=/tmp/vtc.6616.0c8774d2\r\n113.2 **** top   macro def vtcid=vtc.6616.0c8774d2\r\n113.2 **   top   === varnishtest \"service smoke test\"\r\n113.2 *    top   VTEST service smoke test\r\n113.2 **   top   === feature cmd {dig @b.root-servers.net. a.root-servers.net. >/...\r\n113.2 **** dT    0.162\r\n113.2 **   top   === varnish v1 -vcl {\r\n113.2 **** dT    0.163\r\n113.2 **   v1    Launch\r\n113.2 ***  v1    CMD: cd ${pwd} && exec varnishd  -d -n /tmp/vtc.6616.0c8774d2/v1 -i v1 -p debug=+vcl_keep -p debug=+vmod_so_keep -p debug=+vsm_keep -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0' -M '127.0.0.1 32961' -P /tmp/vtc.6616.0c8774d2/v1/varnishd.pid \r\n113.2 ***  v1    CMD: cd /usr/src/libvmod-dynamic/src && exec varnishd  -d -n /tmp/vtc.6616.0c8774d2/v1 -i v1 -p debug=+vcl_keep -p debug=+vmod_so_keep -p debug=+vsm_keep -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0' -M '127.0.0.1 32961' -P /tmp/vtc.6616.0c8774d2/v1/varnishd.pid \r\n113.2 ***  v1    PID: 6625\r\n113.2 **** v1    macro def v1_pid=6625\r\n113.2 **** v1    macro def v1_name=/tmp/vtc.6616.0c8774d2/v1\r\n113.2 **** dT    0.170\r\n113.2 ***  v1    debug|Debug: Version: varnish-7.4.2 revision cd1d10ab53a6f6115b2b4f3b2a1da94c1f749f80\r\n113.2 ***  v1    debug|Debug: Platform: Linux,6.1.21.2-microsoft-standard-WSL2+,x86_64,-jnone,-sdefault,-sdefault,-hcritbit\r\n113.2 ***  v1    debug|200 334     \r\n113.2 ***  v1    debug|-----------------------------\r\n113.2 ***  v1    debug|Varnish Cache CLI 1.0\r\n113.2 ***  v1    debug|-----------------------------\r\n113.2 ***  v1    debug|Linux,6.1.21.2-microsoft-standard-WSL2+,x86_64,-jnone,-sdefault,-sdefault,-hcritbit\r\n113.2 ***  v1    debug|varnish-7.4.2 revision cd1d10ab53a6f6115b2b4f3b2a1da94c1f749f80\r\n113.2 ***  v1    debug|\r\n113.2 ***  v1    debug|Type 'help' for command list.\r\n113.2 ***  v1    debug|Type 'quit' to close CLI session.\r\n113.2 ***  v1    debug|Type 'start' to launch worker process.\r\n113.2 ***  v1    debug|\r\n113.2 **** dT    0.270\r\n113.2 **** v1    CLIPOLL 1 0x1 0x0 0x0\r\n113.2 ***  v1    CLI connection fd = 5\r\n113.2 ***  v1    CLI RX  107\r\n113.2 **** v1    CLI RX|drotryltqdjwwoecnnqazieftftfdooh\r\n113.2 **** v1    CLI RX|\r\n113.2 **** v1    CLI RX|Authentication required.\r\n113.2 **** v1    CLI TX|auth b5df73e06088d59c977725d021704506e8320db5b28ea9b8bd8dd729867e78c6\r\n113.2 ***  v1    CLI RX  200\r\n113.2 **** v1    CLI RX|-----------------------------\r\n113.2 **** v1    CLI RX|Varnish Cache CLI 1.0\r\n113.2 **** v1    CLI RX|-----------------------------\r\n113.2 **** v1    CLI RX|Linux,6.1.21.2-microsoft-standard-WSL2+,x86_64,-jnone,-sdefault,-sdefault,-hcritbit\r\n113.2 **** v1    CLI RX|varnish-7.4.2 revision cd1d10ab53a6f6115b2b4f3b2a1da94c1f749f80\r\n113.2 **** v1    CLI RX|\r\n113.2 **** v1    CLI RX|Type 'help' for command list.\r\n113.2 **** v1    CLI RX|Type 'quit' to close CLI session.\r\n113.2 **** v1    CLI RX|Type 'start' to launch worker process.\r\n113.2 **** v1    CLI TX|vcl.inline vcl1 << %XJEIFLH|)Xspa8P\r\n113.2 **** v1    CLI TX|vcl 4.1;\r\n113.2 **** v1    CLI TX|\r\n113.2 **** v1    CLI TX|\\timport dynamic from \"/usr/src/libvmod-dynamic/src/.libs/libvmod_dynamic.so\";\r\n113.2 **** v1    CLI TX|\r\n113.2 **** v1    CLI TX|\\tbackend proforma none;\r\n113.2 **** v1    CLI TX|\r\n113.2 **** v1    CLI TX|\\tsub vcl_init {\r\n113.2 **** v1    CLI TX|\\t\\tnew r1 = dynamic.resolver();\r\n113.2 **** v1    CLI TX|\\t\\tnew d1 = dynamic.director(\r\n113.2 **** v1    CLI TX|\\t\\t    resolver = r1.use());\r\n113.2 **** v1    CLI TX|\\t\\td1.debug(true);\r\n113.2 **** v1    CLI TX|\\t}\r\n113.2 **** v1    CLI TX|\r\n113.2 **** v1    CLI TX|\\tsub vcl_recv {\r\n113.2 **** v1    CLI TX|\\t\\tset req.backend_hint =\r\n113.2 **** v1    CLI TX|\\t\\t    d1.service(\"_test._tcp.vmod-dynamic.uplex.de\");\r\n113.2 **** v1    CLI TX|\\t\\tset req.http.Host = \"varnish-cache.org\";\r\n113.2 **** v1    CLI TX|\\t}\r\n113.2 **** v1    CLI TX|\r\n113.2 **** v1    CLI TX|\\tsub vcl_backend_fetch {\r\n113.2 **** v1    CLI TX|\\t\\tset bereq.first_byte_timeout = 1s;\r\n113.2 **** v1    CLI TX|\\t\\tset bereq.connect_timeout = 1s;\r\n113.2 **** v1    CLI TX|\\t}\r\n113.2 **** v1    CLI TX|\r\n113.2 **** v1    CLI TX|\\tsub vcl_backend_response {\r\n113.2 **** v1    CLI TX|\\t\\tset beresp.http.backend = beresp.backend;\r\n113.2 **** v1    CLI TX|\\t}\r\n113.2 **** v1    CLI TX|\r\n113.2 **** v1    CLI TX|\\tsub vcl_backend_error {\r\n113.2 **** v1    CLI TX|\\t\\tset beresp.http.backend = beresp.backend;\r\n113.2 **** v1    CLI TX|\\t}\r\n113.2 **** v1    CLI TX|\r\n113.2 **** v1    CLI TX|%XJEIFLH|)Xspa8P\r\n113.2 **** dT    0.371\r\n113.2 ***  v1    vsl|No VSL chunk found (child not started ?)\r\n113.2 **** dT    0.471\r\n113.2 ***  v1    vsl|No VSL chunk found (child not started ?)\r\n113.2 **** dT    0.571\r\n113.2 ***  v1    vsl|No VSL chunk found (child not started ?)\r\n113.2 **** dT    0.662\r\n113.2 ***  v1    CLI RX  200\r\n113.2 **** v1    CLI RX|VCL compiled.\r\n113.2 **** v1    CLI TX|vcl.use vcl1\r\n113.2 **** dT    0.663\r\n113.2 ***  v1    CLI RX  200\r\n113.2 **** v1    CLI RX|VCL 'vcl1' now active\r\n113.2 **   v1    Start\r\n113.2 **** v1    CLI TX|start\r\n113.2 **** dT    0.671\r\n113.2 ***  v1    vsl|No VSL chunk found (child not started ?)\r\n113.2 **** dT    0.706\r\n113.2 ***  v1    debug|Debug: Child (6639) Started\r\n113.2 **** dT    0.730\r\n113.2 ***  v1    debug|Child launched OK\r\n113.2 **** dT    0.736\r\n113.2 ***  v1    CLI RX  200\r\n113.2 ***  v1    debug|Info: Child (6639) said Child starts\r\n113.2 ***  v1    wait-running\r\n113.2 **** v1    CLI TX|status\r\n113.2 **** dT    0.772\r\n113.2 **** v1    vsl|          0 CLI             - Rd vcl.load \"vcl1\" vcl_vcl1.1708082841.201980/vgc.so 1auto\r\n113.2 **** v1    vsl|          0 CLI             - Wr 200 52 Loaded \"vcl_vcl1.1708082841.201980/vgc.so\" as \"vcl1\"\r\n113.2 **** v1    vsl|          0 CLI             - Rd vcl.use \"vcl1\"\r\n113.2 **** v1    vsl|          0 CLI             - Wr 200 0 \r\n113.2 **** v1    vsl|          0 CLI             - Rd start\r\n113.2 **** v1    vsl|          0 Debug           - sockopt: Setting SO_LINGER for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|          0 Debug           - sockopt: Setting SO_KEEPALIVE for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|          0 Debug           - sockopt: Setting SO_SNDTIMEO for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|          0 Debug           - sockopt: Setting SO_RCVTIMEO for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|          0 Debug           - sockopt: Setting TCP_NODELAY for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPIDLE for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPCNT for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPINTVL for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|          0 CLI             - Wr 200 0 \r\n113.2 **** dT    0.785\r\n113.2 ***  v1    CLI RX  200\r\n113.2 **** v1    CLI RX|Child in state running\r\n113.2 **** v1    CLI TX|debug.listen_address\r\n113.2 **** dT    0.835\r\n113.2 ***  v1    CLI RX  200\r\n113.2 **** v1    CLI RX|a0 127.0.0.1 38125\r\n113.2 **** v1    CLI TX|debug.xid 1000\r\n113.2 **** dT    0.872\r\n113.2 **** v1    vsl|          0 CLI             - Rd debug.listen_address \r\n113.2 **** v1    vsl|          0 CLI             - Wr 200 19 a0 127.0.0.1 38125\r\n113.2 \r\n113.2 **** dT    0.885\r\n113.2 ***  v1    CLI RX  200\r\n113.2 **** v1    CLI RX|XID is 1000 chunk 1\r\n113.2 **** v1    CLI TX|debug.listen_address\r\n113.2 **** dT    0.935\r\n113.2 ***  v1    CLI RX  200\r\n113.2 **** v1    CLI RX|a0 127.0.0.1 38125\r\n113.2 **   v1    Listen on 127.0.0.1 38125\r\n113.2 **** v1    macro def v1_addr=127.0.0.1\r\n113.2 **** v1    macro def v1_port=38125\r\n113.2 **** v1    macro def v1_sock=127.0.0.1:38125\r\n113.2 **** v1    macro def v1_a0_addr=127.0.0.1\r\n113.2 **** v1    macro def v1_a0_port=38125\r\n113.2 **** v1    macro def v1_a0_sock=127.0.0.1:38125\r\n113.2 **   top   === varnish v1 -cli \"backend.list\"\r\n113.2 **** v1    CLI TX|backend.list\r\n113.2 **** dT    0.972\r\n113.2 **** v1    vsl|          0 CLI             - Rd debug.xid 1000 \r\n113.2 **** v1    vsl|          0 CLI             - Wr 200 19 XID is 1000 chunk 1\r\n113.2 **** v1    vsl|          0 CLI             - Rd debug.listen_address \r\n113.2 **** v1    vsl|          0 CLI             - Wr 200 19 a0 127.0.0.1 38125\r\n113.2 \r\n113.2 **** dT    0.985\r\n113.2 ***  v1    CLI RX  200\r\n113.2 **** v1    CLI RX|Backend name   Admin    Probe    Health    Last change\r\n113.2 **   v1    CLI 200 <backend.list>\r\n113.2 **   top   === client c1 {\r\n113.2 **   c1    Starting client\r\n113.2 **   c1    Waiting for client\r\n113.2 **   c1    Started on 127.0.0.1:38125 (1 iterations)\r\n113.2 ***  c1    Connect to 127.0.0.1:38125\r\n113.2 ***  c1    connected fd 15 from 127.0.0.1 55250 to 127.0.0.1:38125\r\n113.2 **   c1    === txreq\r\n113.2 **** c1    txreq|GET / HTTP/1.1\\r\r\n113.2 **** c1    txreq|Host: 127.0.0.1\\r\r\n113.2 **** c1    txreq|User-Agent: c1\\r\r\n113.2 **** c1    txreq|\\r\r\n113.2 **   c1    === rxresp\r\n113.2 **** dT    0.992\r\n113.2 **** c1    rxhdrlen = 0\r\n113.2 ---- c1    HTTP header is incomplete\r\n113.2 *    top   RESETTING after ./tests/service/basic.vtc\r\n113.2 **   v1    Wait\r\n113.2 **** v1    CLI TX|panic.show\r\n113.2 ***  v1    debug|Error: Child (6639) died signal=11\r\n113.2 **** dT    0.993\r\n113.2 ***  v1    debug|Debug: Child cleanup complete\r\n113.2 **** dT    1.035\r\n113.2 ***  v1    CLI RX  300\r\n113.2 **** v1    CLI RX|Child has not panicked or panic has been cleared\r\n113.2 ***  v1    debug|Info: manager stopping child\r\n113.2 ***  v1    debug|Info: manager dies\r\n113.2 **** dT    1.038\r\n113.2 **** v1    STDOUT EOF\r\n113.2 **** dT    1.072\r\n113.2 **** v1    vsl|          0 CLI             - Rd backend.list \r\n113.2 **** v1    vsl|          0 CLI             - Wr 200 55 Backend name   Admin    Probe    Health    Last change\r\n113.2 \r\n113.2 **** v1    vsl|       1000 Begin           c sess 0 HTTP/1\r\n113.2 **** v1    vsl|       1000 SessOpen        c 127.0.0.1 55250 a0 127.0.0.1 38125 1708082841.917190 22\r\n113.2 **** v1    vsl|       1000 Debug           c sockopt: SO_LINGER may be inherited for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|       1000 Debug           c sockopt: SO_KEEPALIVE may be inherited for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|       1000 Debug           c sockopt: SO_SNDTIMEO may be inherited for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|       1000 Debug           c sockopt: SO_RCVTIMEO may be inherited for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|       1000 Debug           c sockopt: TCP_NODELAY may be inherited for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|       1000 Debug           c sockopt: TCP_KEEPIDLE may be inherited for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|       1000 Debug           c sockopt: TCP_KEEPCNT may be inherited for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|       1000 Debug           c sockopt: TCP_KEEPINTVL may be inherited for a0=127.0.0.1:38125\r\n113.2 **** v1    vsl|       1000 Link            c req 1001 rxreq\r\n113.2 **** v1    vsl|          0 Debug           - vmod-dynamic vcl1 d1 _test._tcp.vmod-dynamic.uplex.de event 1\r\n113.2 **** v1    vsl|          0 Debug           - vmod-dynamic vcl1 d1 _test._tcp.vmod-dynamic.uplex.de event 1\r\n113.2 **** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.d1(srv _test._tcp.vmod-dynamic.uplex.de) Lookup: 1708082841.917460 0.000000 0.000000\r\n113.2 **** v1    vsl|          0 Debug           - vmod-dynamic vcl1 d1 _test._tcp.vmod-dynamic.uplex.de wait-active\r\n113.2 **   v1    WAIT4 pid=6625 status=0x4000 (user 0.332437 sys 0.094343)\r\n113.2 *    v1    Expected exit: 0x0 signal: 0 core: 0\r\n113.2 ---- v1    Bad exit status: 0x4000 exit 0x40 signal 0 core 0\r\n113.2 *    top   failure during reset\r\n113.2 #    top  TEST ./tests/service/basic.vtc FAILED (1.073) exit=2\r\n113.2 FAIL tests/service/basic.vtc (exit status: 2)\r\n```","closed_by":{"login":"halittiryaki","id":29786283,"node_id":"MDQ6VXNlcjI5Nzg2Mjgz","avatar_url":"https://avatars.githubusercontent.com/u/29786283?v=4","gravatar_id":"","url":"https://api.github.com/users/halittiryaki","html_url":"https://github.com/halittiryaki","followers_url":"https://api.github.com/users/halittiryaki/followers","following_url":"https://api.github.com/users/halittiryaki/following{/other_user}","gists_url":"https://api.github.com/users/halittiryaki/gists{/gist_id}","starred_url":"https://api.github.com/users/halittiryaki/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/halittiryaki/subscriptions","organizations_url":"https://api.github.com/users/halittiryaki/orgs","repos_url":"https://api.github.com/users/halittiryaki/repos","events_url":"https://api.github.com/users/halittiryaki/events{/privacy}","received_events_url":"https://api.github.com/users/halittiryaki/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/111/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/111/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/112","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/112/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/112/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/112/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/112","id":2149582378,"node_id":"I_kwDOBBOOTM6AIAYq","number":112,"title":"Use after free in layer_reolad.vtc from Debug messages","user":{"login":"stevendore","id":19986241,"node_id":"MDQ6VXNlcjE5OTg2MjQx","avatar_url":"https://avatars.githubusercontent.com/u/19986241?v=4","gravatar_id":"","url":"https://api.github.com/users/stevendore","html_url":"https://github.com/stevendore","followers_url":"https://api.github.com/users/stevendore/followers","following_url":"https://api.github.com/users/stevendore/following{/other_user}","gists_url":"https://api.github.com/users/stevendore/gists{/gist_id}","starred_url":"https://api.github.com/users/stevendore/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stevendore/subscriptions","organizations_url":"https://api.github.com/users/stevendore/orgs","repos_url":"https://api.github.com/users/stevendore/repos","events_url":"https://api.github.com/users/stevendore/events{/privacy}","received_events_url":"https://api.github.com/users/stevendore/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-02-22T17:40:07Z","updated_at":"2024-03-07T21:04:32Z","closed_at":"2024-03-07T21:04:32Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"When running `layer_reolad.vtc` with ASAN CFLAGS, ASAN finds a `heap-use-after-free`  in `dom_destroy()`. This is found using latest Varnish Cache and latest libvmod dynamic. The issue could be hidden by allocating the fallback director after the dynamic director, this results in the director/domain being freed in the \"right\" order.\r\n\r\nSteps to reproduce:\r\n1. Configure varnish with `--enable-asan` and then before make set enviorment vairables `ASAN_OPTIONS=abort_on_error=1,detect_odr_violation=1,detect_leaks=1,detect_stack_use_after_return=1,detect_invalid_pointer_pairs=1,handle_segv=0,handle_sigbus=0,use_sigaltstack=0,disable_coredump=0` and `LSAN_OPTIONS=abort_on_error=1,use_sigaltstack=0,suppressions=${path_to}/varnish-cache/tools/lsan.suppr`\r\n2. configure libvmod-dynamic with `CFLAGS='-fsanitize=address' ./configure` and export the same SAN options as Varnish \r\n3. run make check\r\n\r\nCollapsible VTC Log: \r\n<details>\r\n  <summary>toggle view log</summary>\r\n\r\n```\r\n\r\n**** dT    0.000\r\n*    top   TEST ./tests/layer_reload.vtc starting\r\n**** top   extmacro def pkg_version=trunk\r\n**** top   extmacro def pkg_branch=trunk\r\n**** top   extmacro def pwd=/home/swojcik/code/libvmod-dynamic/src\r\n**** top   extmacro def date(...)\r\n**** top   extmacro def string(...)\r\n**** top   extmacro def vmod_dynamic=dynamic from \"/home/swojcik/code/libvmod-dynamic/src/.libs/libvmod_dynamic.so\"\r\n**** top   extmacro def localhost=127.0.0.1\r\n**** top   extmacro def bad_backend=127.0.0.1:41381\r\n**** top   extmacro def listen_addr=127.0.0.1:0\r\n**** top   extmacro def bad_ip=192.0.2.255\r\n**** top   macro def testdir=/home/swojcik/code/libvmod-dynamic/src/./tests\r\n**** top   macro def tmpdir=/tmp/vtc.2872792.2223da65\r\n**** top   macro def vtcid=vtc.2872792.2223da65\r\n**   top   === varnishtest \"Reloading after creating backend in init\"\r\n*    top   VTEST Reloading after creating backend in init\r\n**   top   === feature cmd \"getent hosts example.com\"\r\n**** dT    0.024\r\n**   top   === shell {\r\n**** top   shell_cmd|exec 2>&1 ; \r\n**** top   shell_cmd|\\tcat >/tmp/vtc.2872792.2223da65/f1 <<-EOF\r\n**** top   shell_cmd|\\tvcl 4.1;\r\n**** top   shell_cmd|\\timport dynamic from \"/home/swojcik/code/libvmod-dynamic/src/.libs/libvmod_dynamic.so\";\r\n**** top   shell_cmd|\\timport directors;\r\n**** top   shell_cmd|\r\n**** top   shell_cmd|\\tbackend none none;\r\n**** top   shell_cmd|\r\n**** top   shell_cmd|\\tsub vcl_init {\r\n**** top   shell_cmd|\\t\\tnew dir = directors.fallback();\r\n**** top   shell_cmd|\\t\\tnew res = dynamic.resolver();\r\n**** top   shell_cmd|\\t\\tnew dyn = dynamic.director(domain_usage_timeout = 0.1s, resolver = res.use());\r\n**** top   shell_cmd|\\t\\tdir.add_backend(dyn.backend(host={\"example.com\"}, port={\"80\"}) );\r\n**** top   shell_cmd|\\t}\r\n**** top   shell_cmd|\\tEOF\r\n**** dT    0.028\r\n**** top   shell_status = 0x0000\r\n**   top   === varnish v1 -cliok \"vcl.load vcl1 ${tmpdir}/f1\"\r\n**** dT    0.033\r\n**   v1    Launch\r\n***  v1    CMD: cd ${pwd} && exec varnishd  -d -n /tmp/vtc.2872792.2223da65/v1 -i v1 -p debug=+vcl_keep -p debug=+vmod_so_keep -p debug=+vsm_keep -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0' -M '127.0.0.1 38685' -P /tmp/vtc.2872792.2223da65/v1/varnishd.pid \r\n***  v1    CMD: cd /home/swojcik/code/libvmod-dynamic/src && exec varnishd  -d -n /tmp/vtc.2872792.2223da65/v1 -i v1 -p debug=+vcl_keep -p debug=+vmod_so_keep -p debug=+vsm_keep -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0' -M '127.0.0.1 38685' -P /tmp/vtc.2872792.2223da65/v1/varnishd.pid \r\n**** dT    0.034\r\n***  v1    PID: 2872812\r\n**** v1    macro def v1_pid=2872812\r\n**** v1    macro def v1_name=/tmp/vtc.2872792.2223da65/v1\r\n**** dT    0.054\r\n***  v1    debug|Debug: Version: varnish-trunk revision d77da13b9baf268196075bda0808d0d2e8721470\r\n***  v1    debug|Debug: Platform: Linux,6.5.0-17-generic,x86_64,-jnone,-sdefault,-sdefault,-hcritbit\r\n***  v1    debug|200 317     \r\n***  v1    debug|-----------------------------\r\n***  v1    debug|Varnish Cache CLI 1.0\r\n***  v1    debug|-----------------------------\r\n***  v1    debug|Linux,6.5.0-17-generic,x86_64,-jnone,-sdefault,-sdefault,-hcritbit\r\n***  v1    debug|varnish-trunk revision d77da13b9baf268196075bda0808d0d2e8721470\r\n***  v1    debug|\r\n***  v1    debug|Type 'help' for command list.\r\n***  v1    debug|Type 'quit' to close CLI session.\r\n***  v1    debug|Type 'start' to launch worker process.\r\n***  v1    debug|\r\n**** dT    0.153\r\n**** v1    CLIPOLL 1 0x1 0x0 0x0\r\n***  v1    CLI connection fd = 4\r\n**** dT    0.154\r\n***  v1    CLI RX  107\r\n**** v1    CLI RX|ygvcsiionoelhdqmokrfteicbjzhrzuc\r\n**** v1    CLI RX|\r\n**** v1    CLI RX|Authentication required.\r\n**** v1    CLI TX|auth 90608ea81d2bbbfa7774fd79c416390009fbabba31979c1a26762f0a0fe266fd\r\n**** dT    0.155\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|-----------------------------\r\n**** v1    CLI RX|Varnish Cache CLI 1.0\r\n**** v1    CLI RX|-----------------------------\r\n**** v1    CLI RX|Linux,6.5.0-17-generic,x86_64,-jnone,-sdefault,-sdefault,-hcritbit\r\n**** v1    CLI RX|varnish-trunk revision d77da13b9baf268196075bda0808d0d2e8721470\r\n**** v1    CLI RX|\r\n**** v1    CLI RX|Type 'help' for command list.\r\n**** v1    CLI RX|Type 'quit' to close CLI session.\r\n**** v1    CLI RX|Type 'start' to launch worker process.\r\n**** dT    0.156\r\n**** v1    CLI TX|vcl.load vcl1 /tmp/vtc.2872792.2223da65/f1\r\n**** dT    0.256\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.356\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.456\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.556\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.657\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.757\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.832\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|Message from VCC-compiler:\r\n**** v1    CLI RX|-----------------------------------------------------\r\n**** v1    CLI RX|Suppressions used:\r\n**** v1    CLI RX|  count      bytes template\r\n**** v1    CLI RX|      2        136 HSH_config\r\n**** v1    CLI RX|      9        360 vcc_\r\n**** v1    CLI RX|-----------------------------------------------------\r\n**** v1    CLI RX|\r\n**** v1    CLI RX|Message from dlopen:\r\n**** v1    CLI RX|-----------------------------------------------------\r\n**** v1    CLI RX|Suppressions used:\r\n**** v1    CLI RX|  count      bytes template\r\n**** v1    CLI RX|      2        136 HSH_config\r\n**** v1    CLI RX|-----------------------------------------------------\r\n**** v1    CLI RX|\r\n**** v1    CLI RX|VCL compiled.\r\n**   v1    CLI 200 <vcl.load vcl1 /tmp/vtc.2872792.2223da65/f1>\r\n**   top   === varnish v1 -cliok \"vcl.use vcl1\"\r\n**** v1    CLI TX|vcl.use vcl1\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|VCL 'vcl1' now active\r\n**   v1    CLI 200 <vcl.use vcl1>\r\n**   top   === varnish v1 -cliok \"start\"\r\n**** v1    CLI TX|start\r\n**** dT    0.857\r\n***  v1    vsl|No VSL chunk found (child not started ?)\r\n**** dT    0.875\r\n***  v1    debug|Debug: Child (2872880) Started\r\n**** dT    0.900\r\n***  v1    debug|Child launched OK\r\n**** dT    0.913\r\n***  v1    CLI RX  200\r\n**   v1    CLI 200 <start>\r\n**   top   === varnish v1 -cliok \"vcl.load vcl2 ${tmpdir}/f1\"\r\n***  v1    debug|Info: Child (2872880) said Child starts\r\n**** v1    CLI TX|vcl.load vcl2 /tmp/vtc.2872792.2223da65/f1\r\n**** dT    0.957\r\n**** v1    vsl|          0 CLI             - Rd vcl.load \"vcl1\" vcl_vcl1.1708618810.078643/vgc.so 1auto\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.dyn(example.com:80) Lookup: 1708618810.794116 0.000000 0.000000\r\n**** v1    vsl|          0 CLI             - Wr 200 52 Loaded \"vcl_vcl1.1708618810.078643/vgc.so\" as \"vcl1\"\r\n**** v1    vsl|          0 CLI             - Rd vcl.use \"vcl1\"\r\n**** v1    vsl|          0 CLI             - Wr 200 0 \r\n**** v1    vsl|          0 CLI             - Rd start\r\n**** v1    vsl|          0 Debug           - sockopt: Setting SO_LINGER for a0=127.0.0.1:45489\r\n**** v1    vsl|          0 Debug           - sockopt: Setting SO_KEEPALIVE for a0=127.0.0.1:45489\r\n**** v1    vsl|          0 Debug           - sockopt: Setting SO_SNDTIMEO for a0=127.0.0.1:45489\r\n**** v1    vsl|          0 Debug           - sockopt: Setting SO_RCVTIMEO for a0=127.0.0.1:45489\r\n**** v1    vsl|          0 Debug           - sockopt: Setting TCP_NODELAY for a0=127.0.0.1:45489\r\n**** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPIDLE for a0=127.0.0.1:45489\r\n**** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPCNT for a0=127.0.0.1:45489\r\n**** v1    vsl|          0 Debug           - sockopt: Setting TCP_KEEPINTVL for a0=127.0.0.1:45489\r\n**** v1    vsl|          0 CLI             - Wr 200 0 \r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.dyn(example.com:80) Results: 1708618810.802496 0.008379 0.008379\r\n**** v1    vsl|          0 Error           - vmod-dynamic vcl1 dyn example.com:80 getdns 901 (Queries for the name yielded all negative responses)\r\n**** dT    1.057\r\n**** v1    vsl|          0 VCL_Log         - vmod-dynamic vcl1 dyn example.com:80 timeout\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.dyn(example.com:80) Lookup: 1708618810.881813 0.000000 0.000000\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.dyn(example.com:80) Results: 1708618810.887776 0.005963 0.005963\r\n**** v1    vsl|          0 Error           - vmod-dynamic vcl1 dyn example.com:80 getdns 901 (Queries for the name yielded all negative responses)\r\n**** dT    1.568\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|Message from VCC-compiler:\r\n**** v1    CLI RX|-----------------------------------------------------\r\n**** v1    CLI RX|Suppressions used:\r\n**** v1    CLI RX|  count      bytes template\r\n**** v1    CLI RX|      2        136 HSH_config\r\n**** v1    CLI RX|      9        360 vcc_\r\n**** v1    CLI RX|-----------------------------------------------------\r\n**** v1    CLI RX|\r\n**** v1    CLI RX|Message from dlopen:\r\n**** v1    CLI RX|-----------------------------------------------------\r\n**** v1    CLI RX|Suppressions used:\r\n**** v1    CLI RX|  count      bytes template\r\n**** v1    CLI RX|      2        136 HSH_config\r\n**** v1    CLI RX|-----------------------------------------------------\r\n**** v1    CLI RX|\r\n**   v1    CLI 200 <vcl.load vcl2 /tmp/vtc.2872792.2223da65/f1>\r\n**   top   === varnish v1 -cliok \"vcl.use vcl2\"\r\n**** v1    CLI TX|vcl.use vcl2\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|VCL 'vcl2' now active\r\n**   v1    CLI 200 <vcl.use vcl2>\r\n**   top   === varnish v1 -cliok \"vcl.discard vcl1\"\r\n**** v1    CLI TX|vcl.discard vcl1\r\n**** dT    1.658\r\n**** v1    vsl|          0 CLI             - Rd vcl.load vcl2 vcl_vcl2.1708618810.794719/vgc.so 1auto\r\n**** v1    vsl|          0 CLI             - Wr 200 52 Loaded \"vcl_vcl2.1708618810.794719/vgc.so\" as \"vcl2\"\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl2.dyn(example.com:80) Lookup: 1708618811.449167 0.000000 0.000000\r\n**** v1    vsl|          0 CLI             - Rd vcl.use vcl2\r\n**** v1    vsl|          0 CLI             - Wr 200 0 \r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl2.dyn(example.com:80) Results: 1708618811.457072 0.007905 0.007905\r\n**** v1    vsl|          0 Error           - vmod-dynamic vcl2 dyn example.com:80 getdns 901 (Queries for the name yielded all negative responses)\r\n**** v1    vsl|          0 CLI             - Rd vcl.state vcl1 0cold\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl1.dyn(example.com:80) Done: 1708618811.494451 0.000000 0.000000\r\n**** v1    vsl|          0 VCL_Log         - vmod-dynamic vcl1 dyn example.com:80 deleted (expired)\r\n**** v1    vsl|          0 CLI             - Wr 200 0 \r\n**** v1    vsl|          0 CLI             - Rd vcl.discard vcl1\r\n**** dT    1.758\r\n**** v1    vsl|          0 VCL_Log         - vmod-dynamic vcl2 dyn example.com:80 timeout\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl2.dyn(example.com:80) Lookup: 1708618811.542969 0.000000 0.000000\r\n**** v1    vsl|          0 Timestamp       - vmod-dynamic vcl2.dyn(example.com:80) Results: 1708618811.547853 0.004884 0.004884\r\n**** v1    vsl|          0 Error           - vmod-dynamic vcl2 dyn example.com:80 getdns 901 (Queries for the name yielded all negative responses)\r\n**** dT    2.790\r\n***  v1    debug|Error: Child (2872880) not responding to CLI, killed it.\r\n***  v1    CLI RX  200\r\n**   v1    CLI 200 <vcl.discard vcl1>\r\n*    top   RESETTING after ./tests/layer_reload.vtc\r\n**   v1    Wait\r\n**** v1    CLI TX|backend.list\r\n***  v1    debug|Info: Child (2872880) said =================================================================\r\n***  v1    debug|Info: Child (2872880) said ==2872880==ERROR: AddressSanitizer: heap-use-after-free on address 0x6120000119c4 at pc 0x7fad9b650290 bp 0x7ffe80f849a0 sp 0x7ffe80f84990\r\n***  v1    debug|Info: Child (2872880) said READ of size 4 at 0x6120000119c4 thread T0\r\n***  v1    debug|Info: Child (2872880) said     #0 0x7fad9b65028f in dom_destroy (vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4+0x1f28f)\r\n***  v1    debug|Info: Child (2872880) said     #1 0x561c4abfd611 in vcldir_retire cache/cache_vrt_vcl.c:287\r\n***  v1    debug|Info: Child (2872880) said     #2 0x561c4abfd611 in vcldir_deref cache/cache_vrt_vcl.c:305\r\n***  v1    debug|Info: Child (2872880) said     #3 0x561c4ac00754 in VRT_Assign_Backend cache/cache_vrt_vcl.c:343\r\n***  v1    debug|Info: Child (2872880) said     #4 0x7fad998559ef in vdir_release /home/swojcik/code/varnish-cache/vmod/vmod_directors.c:99\r\n***  v1    debug|Info: Child (2872880) said     #5 0x561c4ac00420 in VRT_DelDirector cache/cache_vrt_vcl.c:321\r\n***  v1    debug|Info: Child (2872880) said     #6 0x7fad9ca2fd0b in VGC_Discard /tmp/vtc.2872792.2223da65/v1/vcl_vcl1.1708618810.078643/vgc.c:4194\r\n***  v1    debug|Info: Child (2872880) said     #7 0x7fad9ca2fd0b in VGC_Event /tmp/vtc.2872792.2223da65/v1/vcl_vcl1.1708618810.078643/vgc.c:4287\r\n***  v1    debug|Info: Child (2872880) said     #8 0x561c4abdb6e5 in vcl_send_event cache/cache_vcl.c:255\r\n***  v1    debug|Info: Child (2872880) said     #9 0x561c4abdf9e2 in VCL_Poll cache/cache_vcl.c:736\r\n***  v1    debug|Info: Child (2872880) said     #10 0x561c4abe01c4 in vcl_cli_discard cache/cache_vcl.c:903\r\n***  v1    debug|Info: Child (2872880) said     #11 0x561c4acd567f in cls_dispatch /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:273\r\n***  v1    debug|Info: Child (2872880) said     #12 0x561c4acd567f in cls_exec /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:324\r\n***  v1    debug|Info: Child (2872880) said     #13 0x561c4acd6335 in cls_feed /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:412\r\n***  v1    debug|Info: Child (2872880) said     #14 0x561c4acd6335 in VCLS_Poll /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:617\r\n***  v1    debug|Info: Child (2872880) said     #15 0x561c4ab66923 in CLI_Run cache/cache_cli.c:110\r\n***  v1    debug|Info: Child (2872880) said     #16 0x561c4abac4d9 in child_main cache/cache_main.c:467\r\n***  v1    debug|Info: Child (2872880) said     #17 0x561c4ac482df in mgt_launch_child mgt/mgt_child.c:402\r\n***  v1    debug|Info: Child (2872880) said     #18 0x561c4acd567f in cls_dispatch /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:273\r\n***  v1    debug|Info: Child (2872880) said     #19 0x561c4acd567f in cls_exec /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:324\r\n***  v1    debug|Info: Child (2872880) said     #20 0x561c4acd6335 in cls_feed /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:412\r\n***  v1    debug|Info: Child (2872880) said     #21 0x561c4acd6335 in VCLS_Poll /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:617\r\n***  v1    debug|Info: Child (2872880) said     #22 0x561c4acda316 in VEV_Once /home/swojcik/code/varnish-cache/lib/libvarnish/vev.c:466\r\n***  v1    debug|Info: Child (2872880) said     #23 0x561c4acda687 in VEV_Loop /home/swojcik/code/varnish-cache/lib/libvarnish/vev.c:354\r\n***  v1    debug|Info: Child (2872880) said     #24 0x561c4ab47691 in main mgt/mgt_main.c:995\r\n***  v1    debug|Info: Child (2872880) said     #25 0x7fadb3829d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58\r\n***  v1    debug|Info: Child (2872880) said     #26 0x7fadb3829e3f in __libc_start_main_impl ../csu/libc-start.c:392\r\n***  v1    debug|Info: Child (2872880) said     #27 0x561c4ab48834 in _start (/opt/varnish/os-main-asan/sbin/varnishd+0x11f834)\r\n***  v1    debug|Info: Child (2872880) said \r\n***  v1    debug|Info: Child (2872880) said 0x6120000119c4 is located 260 bytes inside of 264-byte region [0x6120000118c0,0x6120000119c8)\r\n***  v1    debug|Info: Child (2872880) said freed by thread T0 here:\r\n***  v1    debug|Info: Child (2872880) said     #0 0x7fadb40b4537 in __interceptor_free ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:127\r\n***  v1    debug|Info: Child (2872880) said     #1 0x7fad9b6540ff in vmod_director__fini (vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4+0x230ff)\r\n***  v1    debug|Info: Child (2872880) said     #2 0x7fad9ca2fcdd in VGC_Discard /tmp/vtc.2872792.2223da65/v1/vcl_vcl1.1708618810.078643/vgc.c:4186\r\n***  v1    debug|Info: Child (2872880) said     #3 0x7fad9ca2fcdd in VGC_Event /tmp/vtc.2872792.2223da65/v1/vcl_vcl1.1708618810.078643/vgc.c:4287\r\n***  v1    debug|Info: Child (2872880) said     #4 0x561c4abdb6e5 in vcl_send_event cache/cache_vcl.c:255\r\n***  v1    debug|Info: Child (2872880) said     #5 0x561c4abdf9e2 in VCL_Poll cache/cache_vcl.c:736\r\n***  v1    debug|Info: Child (2872880) said     #6 0x561c4abe01c4 in vcl_cli_discard cache/cache_vcl.c:903\r\n***  v1    debug|Info: Child (2872880) said     #7 0x561c4acd567f in cls_dispatch /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:273\r\n***  v1    debug|Info: Child (2872880) said     #8 0x561c4acd567f in cls_exec /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:324\r\n***  v1    debug|Info: Child (2872880) said     #9 0x561c4acd6335 in cls_feed /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:412\r\n***  v1    debug|Info: Child (2872880) said     #10 0x561c4acd6335 in VCLS_Poll /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:617\r\n***  v1    debug|Info: Child (2872880) said     #11 0x561c4ab66923 in CLI_Run cache/cache_cli.c:110\r\n***  v1    debug|Info: Child (2872880) said     #12 0x561c4abac4d9 in child_main cache/cache_main.c:467\r\n***  v1    debug|Info: Child (2872880) said     #13 0x561c4ac482df in mgt_launch_child mgt/mgt_child.c:402\r\n***  v1    debug|Info: Child (2872880) said     #14 0x561c4acd567f in cls_dispatch /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:273\r\n***  v1    debug|Info: Child (2872880) said     #15 0x561c4acd567f in cls_exec /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:324\r\n***  v1    debug|Info: Child (2872880) said     #16 0x561c4acd6335 in cls_feed /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:412\r\n***  v1    debug|Info: Child (2872880) said     #17 0x561c4acd6335 in VCLS_Poll /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:617\r\n***  v1    debug|Info: Child (2872880) said     #18 0x561c4acda316 in VEV_Once /home/swojcik/code/varnish-cache/lib/libvarnish/vev.c:466\r\n***  v1    debug|Info: Child (2872880) said     #19 0x561c4acda687 in VEV_Loop /home/swojcik/code/varnish-cache/lib/libvarnish/vev.c:354\r\n***  v1    debug|Info: Child (2872880) said     #20 0x561c4ab47691 in main mgt/mgt_main.c:995\r\n***  v1    debug|Info: Child (2872880) said     #21 0x7fadb3829d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58\r\n***  v1    debug|Info: Child (2872880) said \r\n***  v1    debug|Info: Child (2872880) said previously allocated by thread T0 here:\r\n***  v1    debug|Info: Child (2872880) said     #0 0x7fadb40b4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154\r\n***  v1    debug|Info: Child (2872880) said     #1 0x7fad9b65293d in vmod_director__init (vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4+0x2193d)\r\n***  v1    debug|Info: Child (2872880) said     #2 0x7fad9ca294c3 in VGC_function_vcl_init /tmp/vtc.2872792.2223da65/v1/vcl_vcl1.1708618810.078643/vgc.c:3862\r\n***  v1    debug|Info: Child (2872880) said     #3 0x561c4abdb6e5 in vcl_send_event cache/cache_vcl.c:255\r\n***  v1    debug|Info: Child (2872880) said     #4 0x561c4abdded6 in vcl_load cache/cache_vcl.c:696\r\n***  v1    debug|Info: Child (2872880) said     #5 0x561c4abdded6 in vcl_cli_load cache/cache_vcl.c:843\r\n***  v1    debug|Info: Child (2872880) said     #6 0x561c4acd567f in cls_dispatch /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:273\r\n***  v1    debug|Info: Child (2872880) said     #7 0x561c4acd567f in cls_exec /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:324\r\n***  v1    debug|Info: Child (2872880) said     #8 0x561c4acd6335 in cls_feed /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:412\r\n***  v1    debug|Info: Child (2872880) said     #9 0x561c4acd6335 in VCLS_Poll /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:617\r\n***  v1    debug|Info: Child (2872880) said     #10 0x561c4ab66923 in CLI_Run cache/cache_cli.c:110\r\n***  v1    debug|Info: Child (2872880) said     #11 0x561c4abac4d9 in child_main cache/cache_main.c:467\r\n***  v1    debug|Info: Child (2872880) said     #12 0x561c4ac482df in mgt_launch_child mgt/mgt_child.c:402\r\n***  v1    debug|Info: Child (2872880) said     #13 0x561c4acd567f in cls_dispatch /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:273\r\n***  v1    debug|Info: Child (2872880) said     #14 0x561c4acd567f in cls_exec /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:324\r\n***  v1    debug|Info: Child (2872880) said     #15 0x561c4acd6335 in cls_feed /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:412\r\n***  v1    debug|Info: Child (2872880) said     #16 0x561c4acd6335 in VCLS_Poll /home/swojcik/code/varnish-cache/lib/libvarnish/vcli_serve.c:617\r\n***  v1    debug|Info: Child (2872880) said     #17 0x561c4acda316 in VEV_Once /home/swojcik/code/varnish-cache/lib/libvarnish/vev.c:466\r\n***  v1    debug|Info: Child (2872880) said     #18 0x561c4acda687 in VEV_Loop /home/swojcik/code/varnish-cache/lib/libvarnish/vev.c:354\r\n***  v1    debug|Info: Child (2872880) said     #19 0x561c4ab47691 in main mgt/mgt_main.c:995\r\n***  v1    debug|Info: Child (2872880) said     #20 0x7fadb3829d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58\r\n***  v1    debug|Info: Child (2872880) said \r\n***  v1    debug|Info: Child (2872880) said SUMMARY: AddressSanitizer: heap-use-after-free (vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4+0x1f28f) in dom_destroy\r\n***  v1    debug|Info: Child (2872880) said Shadow bytes around the buggy address:\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa2e0: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa2f0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa300: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa310: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa320: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said =>0x0c247fffa330: fd fd fd fd fd fd fd fd[fd]fa fa fa fa fa fa fa\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa340: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa350: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa360: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa370: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said   0x0c247fffa380: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd\r\n***  v1    debug|Info: Child (2872880) said Shadow byte legend (one shadow byte represents 8 application bytes):\r\n***  v1    debug|Info: Child (2872880) said   Addressable:           00\r\n***  v1    debug|Info: Child (2872880) said   Partially addressable: 01 02 03 04 05 06 07 \r\n***  v1    debug|Info: Child (2872880) said   Heap left redzone:       fa\r\n***  v1    debug|Info: Child (2872880) said   Freed heap region:       fd\r\n***  v1    debug|Info: Child (2872880) said   Stack left redzone:      f1\r\n***  v1    debug|Info: Child (2872880) said   Stack mid redzone:       f2\r\n***  v1    debug|Info: Child (2872880) said   Stack right redzone:     f3\r\n***  v1    debug|Info: Child (2872880) said   Stack after return:      f5\r\n***  v1    debug|Info: Child (2872880) said   Stack use after scope:   f8\r\n***  v1    debug|Info: Child (2872880) said   Global redzone:          f9\r\n***  v1    debug|Info: Child (2872880) said   Global init order:       f6\r\n***  v1    debug|Info: Child (2872880) said   Poisoned by user:        f7\r\n***  v1    debug|Info: Child (2872880) said   Container overflow:      fc\r\n***  v1    debug|Info: Child (2872880) said   Array cookie:            ac\r\n***  v1    debug|Info: Child (2872880) said   Intra object redzone:    bb\r\n***  v1    debug|Info: Child (2872880) said   ASan internal:           fe\r\n***  v1    debug|Info: Child (2872880) said   Left alloca redzone:     ca\r\n***  v1    debug|Info: Child (2872880) said   Right alloca redzone:    cb\r\n***  v1    debug|Info: Child (2872880) said   Shadow gap:              cc\r\n***  v1    debug|Info: Child (2872880) said ==2872880==ABORTING\r\n***  v1    debug|Error: Child (2872880) died signal=6 (core dumped)\r\n***  v1    debug|Error: Child (2872880) Panic at: Thu, 22 Feb 2024 16:20:12 GMT\r\n***  v1    debug|Wrong turn at cache/cache_main.c:328:\r\n***  v1    debug|Signal 6 (Aborted) received at 0x3e8002bd630 si_code -6\r\n***  v1    debug|version = varnish-trunk revision d77da13b9baf268196075bda0808d0d2e8721470, vrt api = 18.1\r\n***  v1    debug|ident = Linux,6.5.0-17-generic,x86_64,-jnone,-sdefault,-sdefault,-hcritbit,epoll\r\n***  v1    debug|now = 324499.612377 (mono), 1708618811.590555 (real)\r\n***  v1    debug|Backtrace:\r\n***  v1    debug|  ip=0x561c4abb7dc4 sp=0x7fadafd93b10 <pan_ic+0x364>\r\n***  v1    debug|  ip=0x561c4accff78 sp=0x7fadafd93d40 <VAS_Fail+0x78>\r\n***  v1    debug|  ip=0x561c4ababb1e sp=0x7fadafd93d90 <child_signal_handler+0x1ee>\r\n***  v1    debug|  ip=0x7fadb3842520 sp=0x7fadafd94380 <__sigaction+0x50>\r\n***  v1    debug|  ip=0x7fadb38969fc sp=0x7ffe80f839d0 <pthread_kill+0x12c>\r\n***  v1    debug|  ip=0x7fadb3842476 sp=0x7ffe80f83a90 <raise+0x16>\r\n***  v1    debug|  ip=0x7fadb38287f3 sp=0x7ffe80f83aa0 <abort+0xd3>\r\n***  v1    debug|  ip=0x7fadb40d2712 sp=0x7ffe80f83be0 <_ZN11__sanitizer5AbortEv+0x32>\r\n***  v1    debug|  ip=0x7fadb40de2cc sp=0x7ffe80f83c90 <_ZN11__sanitizer3DieEv+0x4c>\r\n***  v1    debug|  ip=0x7fadb40bd77c sp=0x7ffe80f83cb0 <_ZN6__asan19ScopedInErrorReportD1Ev+0x1ac>\r\n***  v1    debug|  ip=0x7fadb40bd015 sp=0x7ffe80f83d00 <_ZN6__asan18ReportGenericErrorEmmmmbmjb+0x125>\r\n***  v1    debug|  ip=0x7fadb40bdd3b sp=0x7ffe80f84980 <__asan_report_load4+0x3b>\r\n***  v1    debug|  ip=0x7fad9b650290 sp=0x7ffe80f849b0 <dom_destroy+0x2f0>\r\n***  v1    debug|  ip=0x561c4abfd612 sp=0x7ffe80f84a50 <vcldir_deref+0x302>\r\n***  v1    debug|  ip=0x561c4ac00755 sp=0x7ffe80f84a90 <VRT_Assign_Backend+0x1b5>\r\n***  v1    debug|  ip=0x7fad998559f0 sp=0x7ffe80f84ad0 <vdir_release+0xd0>\r\n***  v1    debug|  ip=0x561c4ac00421 sp=0x7ffe80f84b20 <VRT_DelDirector+0x111>\r\n***  v1    debug|  ip=0x7fad9ca2fd0c sp=0x7ffe80f84b40 <VGC_function_vcl_backend_error+0x78c>\r\n***  v1    debug|  ip=0x561c4abdb6e6 sp=0x7ffe80f84b60 <vcl_send_event+0x406>\r\n***  v1    debug|  ip=0x561c4abdf9e3 sp=0x7ffe80f84c30 <VCL_Poll+0x3c3>\r\n***  v1    debug|  ip=0x561c4abe01c5 sp=0x7ffe80f84d10 <vcl_cli_discard+0x435>\r\n***  v1    debug|  ip=0x561c4acd5680 sp=0x7ffe80f84db0 <cls_exec+0x830>\r\n***  v1    debug|  ip=0x561c4acd6336 sp=0x7ffe80f84e20 <VCLS_Poll+0x946>\r\n***  v1    debug|  ip=0x561c4ab66924 sp=0x7ffe80f87040 <CLI_Run+0xc4>\r\n***  v1    debug|  ip=0x561c4abac4da sp=0x7ffe80f87060 <child_main+0x32a>\r\n***  v1    debug|  ip=0x561c4ac482e0 sp=0x7ffe80f871d0 <mgt_launch_child+0x680>\r\n***  v1    debug|  ip=0x561c4acd5680 sp=0x7ffe80f87310 <cls_exec+0x830>\r\n***  v1    debug|  ip=0x561c4acd6336 sp=0x7ffe80f87380 <VCLS_Poll+0x946>\r\n***  v1    debug|  ip=0x561c4acda317 sp=0x7ffe80f895a0 <VEV_Once+0x4d7>\r\n***  v1    debug|  ip=0x561c4acda688 sp=0x7ffe80f89600 <VEV_Loop+0x68>\r\n***  v1    debug|  ip=0x561c4ab47692 sp=0x7ffe80f89620 <main+0x46a2>\r\n***  v1    debug|  ip=0x7fadb3829d90 sp=0x7ffe80f899d0 <__libc_init_first+0x90>\r\n***  v1    debug|  ip=0x7fadb3829e40 sp=0x7ffe80f89a70 <__libc_start_main+0x80>\r\n***  v1    debug|  ip=0x561c4ab48835 sp=0x7ffe80f89ac0 <_start+0x25>\r\n***  v1    debug|errno = 25 (Inappropriate ioctl for device)\r\n***  v1    debug|argv = {\r\n***  v1    debug|  [0] = \\\"varnishd\\\",\r\n***  v1    debug|  [1] = \\\"-d\\\",\r\n***  v1    debug|  [2] = \\\"-n\\\",\r\n***  v1    debug|  [3] = \\\"/tmp/vtc.2872792.2223da65/v1\\\",\r\n***  v1    debug|  [4] = \\\"-i\\\",\r\n***  v1    debug|  [5] = \\\"v1\\\",\r\n***  v1    debug|  [6] = \\\"-p\\\",\r\n***  v1    debug|  [7] = \\\"debug=+vcl_keep\\\",\r\n***  v1    debug|  [8] = \\\"-p\\\",\r\n***  v1    debug|  [9] = \\\"debug=+vmod_so_keep\\\",\r\n***  v1    debug|  [10] = \\\"-p\\\",\r\n***  v1    debug|  [11] = \\\"debug=+vsm_keep\\\",\r\n***  v1    debug|  [12] = \\\"-l\\\",\r\n***  v1    debug|  [13] = \\\"2m\\\",\r\n***  v1    debug|  [14] = \\\"-p\\\",\r\n***  v1    debug|  [15] = \\\"auto_restart=off\\\",\r\n***  v1    debug|  [16] = \\\"-p\\\",\r\n***  v1    debug|  [17] = \\\"syslog_cli_traffic=off\\\",\r\n***  v1    debug|  [18] = \\\"-p\\\",\r\n***  v1    debug|  [19] = \\\"thread_pool_min=10\\\",\r\n***  v1    debug|  [20] = \\\"-p\\\",\r\n***  v1    debug|  [21] = \\\"debug=+vtc_mode\\\",\r\n***  v1    debug|  [22] = \\\"-p\\\",\r\n***  v1    debug|  [23] = \\\"vsl_mask=+Debug,+H2RxHdr,+H2RxBody\\\",\r\n***  v1    debug|  [24] = \\\"-p\\\",\r\n***  v1    debug|  [25] = \\\"h2_initial_window_size=1m\\\",\r\n***  v1    debug|  [26] = \\\"-p\\\",\r\n***  v1    debug|  [27] = \\\"h2_rx_window_low_water=64k\\\",\r\n***  v1    debug|  [28] = \\\"-a\\\",\r\n***  v1    debug|  [29] = \\\"127.0.0.1:0\\\",\r\n***  v1    debug|  [30] = \\\"-M\\\",\r\n***  v1    debug|  [31] = \\\"127.0.0.1 38685\\\",\r\n***  v1    debug|  [32] = \\\"-P\\\",\r\n***  v1    debug|  [33] = \\\"/tmp/vtc.2872792.2223da65/v1/varnishd.pid\\\",\r\n***  v1    debug|}\r\n***  v1    debug|pthread.self = 0x7fadb3ee7040\r\n***  v1    debug|pthread.name = (cache-main)\r\n***  v1    debug|pthread.attr = {\r\n***  v1    debug|  guard = 0,\r\n***  v1    debug|  stack_bottom = 0x7ffe8078d000,\r\n***  v1    debug|  stack_top = 0x7ffe80f8a000,\r\n***  v1    debug|  stack_size = 8376320,\r\n***  v1    debug|}\r\n***  v1    debug|thr.req = NULL\r\n***  v1    debug|thr.busyobj = NULL\r\n***  v1    debug|thr.worker = NULL\r\n***  v1    debug|vmods = {\r\n***  v1    debug|  dynamic = {0x60b0000005c0, Varnish trunk d77da13b9baf268196075bda0808d0d2e8721470, 18.1},\r\n***  v1    debug|  directors = {0x60b000000720, Varnish trunk d77da13b9baf268196075bda0808d0d2e8721470, 0.0},\r\n***  v1    debug|},\r\n***  v1    debug|pools = {\r\n***  v1    debug|  pool = 0x612000000040 {\r\n***  v1    debug|    nidle = 9,\r\n***  v1    debug|    nthr = 10,\r\n***  v1    debug|    lqueue = 0\r\n***  v1    debug|  },\r\n***  v1    debug|  pool = 0x6120000001c0 {\r\n***  v1    debug|    nidle = 9,\r\n***  v1    debug|    nthr = 10,\r\n***  v1    debug|    lqueue = 0\r\n***  v1    debug|  },\r\n***  v1    debug|},\r\n***  v1    debug|\r\n***  v1    debug|\r\n***  v1    debug|Debug: Child cleanup complete\r\n**** dT    2.791\r\n***  v1    CLI RX  101\r\n**** v1    CLI RX|Unknown request in manager process (child not running).\r\n**** v1    CLI RX|Type 'help' for more info.\r\n**   v1    Stop\r\n**** v1    CLI TX|stop\r\n**** dT    2.833\r\n***  v1    CLI RX  300\r\n**** v1    CLI RX|Child in state stopped\r\n***  v1    wait-stopped\r\n**** v1    CLI TX|status\r\n**** dT    2.877\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|Child in state stopped\r\n**** v1    CLI TX|panic.show\r\n**** dT    2.925\r\n***  v1    CLI RX  200\r\n**** v1    CLI RX|Panic at: Thu, 22 Feb 2024 16:20:12 GMT\r\n**** v1    CLI RX|Wrong turn at cache/cache_main.c:328:\r\n**** v1    CLI RX|Signal 6 (Aborted) received at 0x3e8002bd630 si_code -6\r\n**** v1    CLI RX|version = varnish-trunk revision d77da13b9baf268196075bda0808d0d2e8721470, vrt api = 18.1\r\n**** v1    CLI RX|ident = Linux,6.5.0-17-generic,x86_64,-jnone,-sdefault,-sdefault,-hcritbit,epoll\r\n**** v1    CLI RX|now = 324499.612377 (mono), 1708618811.590555 (real)\r\n**** v1    CLI RX|Backtrace:\r\n**** v1    CLI RX|  ip=0x561c4abb7dc4 sp=0x7fadafd93b10 <pan_ic+0x364>\r\n**** v1    CLI RX|  ip=0x561c4accff78 sp=0x7fadafd93d40 <VAS_Fail+0x78>\r\n**** v1    CLI RX|  ip=0x561c4ababb1e sp=0x7fadafd93d90 <child_signal_handler+0x1ee>\r\n**** v1    CLI RX|  ip=0x7fadb3842520 sp=0x7fadafd94380 <__sigaction+0x50>\r\n**** v1    CLI RX|  ip=0x7fadb38969fc sp=0x7ffe80f839d0 <pthread_kill+0x12c>\r\n**** v1    CLI RX|  ip=0x7fadb3842476 sp=0x7ffe80f83a90 <raise+0x16>\r\n**** v1    CLI RX|  ip=0x7fadb38287f3 sp=0x7ffe80f83aa0 <abort+0xd3>\r\n**** v1    CLI RX|  ip=0x7fadb40d2712 sp=0x7ffe80f83be0 <_ZN11__sanitizer5AbortEv+0x32>\r\n**** v1    CLI RX|  ip=0x7fadb40de2cc sp=0x7ffe80f83c90 <_ZN11__sanitizer3DieEv+0x4c>\r\n**** v1    CLI RX|  ip=0x7fadb40bd77c sp=0x7ffe80f83cb0 <_ZN6__asan19ScopedInErrorReportD1Ev+0x1ac>\r\n**** v1    CLI RX|  ip=0x7fadb40bd015 sp=0x7ffe80f83d00 <_ZN6__asan18ReportGenericErrorEmmmmbmjb+0x125>\r\n**** v1    CLI RX|  ip=0x7fadb40bdd3b sp=0x7ffe80f84980 <__asan_report_load4+0x3b>\r\n**** v1    CLI RX|  ip=0x7fad9b650290 sp=0x7ffe80f849b0 <dom_destroy+0x2f0>\r\n**** v1    CLI RX|  ip=0x561c4abfd612 sp=0x7ffe80f84a50 <vcldir_deref+0x302>\r\n**** v1    CLI RX|  ip=0x561c4ac00755 sp=0x7ffe80f84a90 <VRT_Assign_Backend+0x1b5>\r\n**** v1    CLI RX|  ip=0x7fad998559f0 sp=0x7ffe80f84ad0 <vdir_release+0xd0>\r\n**** v1    CLI RX|  ip=0x561c4ac00421 sp=0x7ffe80f84b20 <VRT_DelDirector+0x111>\r\n**** v1    CLI RX|  ip=0x7fad9ca2fd0c sp=0x7ffe80f84b40 <VGC_function_vcl_backend_error+0x78c>\r\n**** v1    CLI RX|  ip=0x561c4abdb6e6 sp=0x7ffe80f84b60 <vcl_send_event+0x406>\r\n**** v1    CLI RX|  ip=0x561c4abdf9e3 sp=0x7ffe80f84c30 <VCL_Poll+0x3c3>\r\n**** v1    CLI RX|  ip=0x561c4abe01c5 sp=0x7ffe80f84d10 <vcl_cli_discard+0x435>\r\n**** v1    CLI RX|  ip=0x561c4acd5680 sp=0x7ffe80f84db0 <cls_exec+0x830>\r\n**** v1    CLI RX|  ip=0x561c4acd6336 sp=0x7ffe80f84e20 <VCLS_Poll+0x946>\r\n**** v1    CLI RX|  ip=0x561c4ab66924 sp=0x7ffe80f87040 <CLI_Run+0xc4>\r\n**** v1    CLI RX|  ip=0x561c4abac4da sp=0x7ffe80f87060 <child_main+0x32a>\r\n**** v1    CLI RX|  ip=0x561c4ac482e0 sp=0x7ffe80f871d0 <mgt_launch_child+0x680>\r\n**** v1    CLI RX|  ip=0x561c4acd5680 sp=0x7ffe80f87310 <cls_exec+0x830>\r\n**** v1    CLI RX|  ip=0x561c4acd6336 sp=0x7ffe80f87380 <VCLS_Poll+0x946>\r\n**** v1    CLI RX|  ip=0x561c4acda317 sp=0x7ffe80f895a0 <VEV_Once+0x4d7>\r\n**** v1    CLI RX|  ip=0x561c4acda688 sp=0x7ffe80f89600 <VEV_Loop+0x68>\r\n**** v1    CLI RX|  ip=0x561c4ab47692 sp=0x7ffe80f89620 <main+0x46a2>\r\n**** v1    CLI RX|  ip=0x7fadb3829d90 sp=0x7ffe80f899d0 <__libc_init_first+0x90>\r\n**** v1    CLI RX|  ip=0x7fadb3829e40 sp=0x7ffe80f89a70 <__libc_start_main+0x80>\r\n**** v1    CLI RX|  ip=0x561c4ab48835 sp=0x7ffe80f89ac0 <_start+0x25>\r\n**** v1    CLI RX|errno = 25 (Inappropriate ioctl for device)\r\n**** v1    CLI RX|argv = {\r\n**** v1    CLI RX|  [0] = \\\"varnishd\\\",\r\n**** v1    CLI RX|  [1] = \\\"-d\\\",\r\n**** v1    CLI RX|  [2] = \\\"-n\\\",\r\n**** v1    CLI RX|  [3] = \\\"/tmp/vtc.2872792.2223da65/v1\\\",\r\n**** v1    CLI RX|  [4] = \\\"-i\\\",\r\n**** v1    CLI RX|  [5] = \\\"v1\\\",\r\n**** v1    CLI RX|  [6] = \\\"-p\\\",\r\n**** v1    CLI RX|  [7] = \\\"debug=+vcl_keep\\\",\r\n**** v1    CLI RX|  [8] = \\\"-p\\\",\r\n**** v1    CLI RX|  [9] = \\\"debug=+vmod_so_keep\\\",\r\n**** v1    CLI RX|  [10] = \\\"-p\\\",\r\n**** v1    CLI RX|  [11] = \\\"debug=+vsm_keep\\\",\r\n**** v1    CLI RX|  [12] = \\\"-l\\\",\r\n**** v1    CLI RX|  [13] = \\\"2m\\\",\r\n**** v1    CLI RX|  [14] = \\\"-p\\\",\r\n**** v1    CLI RX|  [15] = \\\"auto_restart=off\\\",\r\n**** v1    CLI RX|  [16] = \\\"-p\\\",\r\n**** v1    CLI RX|  [17] = \\\"syslog_cli_traffic=off\\\",\r\n**** v1    CLI RX|  [18] = \\\"-p\\\",\r\n**** v1    CLI RX|  [19] = \\\"thread_pool_min=10\\\",\r\n**** v1    CLI RX|  [20] = \\\"-p\\\",\r\n**** v1    CLI RX|  [21] = \\\"debug=+vtc_mode\\\",\r\n**** v1    CLI RX|  [22] = \\\"-p\\\",\r\n**** v1    CLI RX|  [23] = \\\"vsl_mask=+Debug,+H2RxHdr,+H2RxBody\\\",\r\n**** v1    CLI RX|  [24] = \\\"-p\\\",\r\n**** v1    CLI RX|  [25] = \\\"h2_initial_window_size=1m\\\",\r\n**** v1    CLI RX|  [26] = \\\"-p\\\",\r\n**** v1    CLI RX|  [27] = \\\"h2_rx_window_low_water=64k\\\",\r\n**** v1    CLI RX|  [28] = \\\"-a\\\",\r\n**** v1    CLI RX|  [29] = \\\"127.0.0.1:0\\\",\r\n**** v1    CLI RX|  [30] = \\\"-M\\\",\r\n**** v1    CLI RX|  [31] = \\\"127.0.0.1 38685\\\",\r\n**** v1    CLI RX|  [32] = \\\"-P\\\",\r\n**** v1    CLI RX|  [33] = \\\"/tmp/vtc.2872792.2223da65/v1/varnishd.pid\\\",\r\n**** v1    CLI RX|}\r\n**** v1    CLI RX|pthread.self = 0x7fadb3ee7040\r\n**** v1    CLI RX|pthread.name = (cache-main)\r\n**** v1    CLI RX|pthread.attr = {\r\n**** v1    CLI RX|  guard = 0,\r\n**** v1    CLI RX|  stack_bottom = 0x7ffe8078d000,\r\n**** v1    CLI RX|  stack_top = 0x7ffe80f8a000,\r\n**** v1    CLI RX|  stack_size = 8376320,\r\n**** v1    CLI RX|}\r\n**** v1    CLI RX|thr.req = NULL\r\n**** v1    CLI RX|thr.busyobj = NULL\r\n**** v1    CLI RX|thr.worker = NULL\r\n**** v1    CLI RX|vmods = {\r\n**** v1    CLI RX|  dynamic = {0x60b0000005c0, Varnish trunk d77da13b9baf268196075bda0808d0d2e8721470, 18.1},\r\n**** v1    CLI RX|  directors = {0x60b000000720, Varnish trunk d77da13b9baf268196075bda0808d0d2e8721470, 0.0},\r\n**** v1    CLI RX|},\r\n**** v1    CLI RX|pools = {\r\n**** v1    CLI RX|  pool = 0x612000000040 {\r\n**** v1    CLI RX|    nidle = 9,\r\n**** v1    CLI RX|    nthr = 10,\r\n**** v1    CLI RX|    lqueue = 0\r\n**** v1    CLI RX|  },\r\n**** v1    CLI RX|  pool = 0x6120000001c0 {\r\n**** v1    CLI RX|    nidle = 9,\r\n**** v1    CLI RX|    nthr = 10,\r\n**** v1    CLI RX|    lqueue = 0\r\n**** v1    CLI RX|  },\r\n**** v1    CLI RX|},\r\n**** v1    CLI RX|\r\n**** v1    CLI RX|\r\n---- v1    Unexpected panic\r\n*    top   failure during reset\r\n*    diag  0.0 2606:2800:220:1:248:1893:25c8:1946 example.com\r\n*    diag  0.0 -----------------------------------------------------\r\n*    diag  0.0 Suppressions used:\r\n*    diag  0.0   count      bytes template\r\n*    diag  0.0       7       1491 parse_string\r\n*    diag  0.0 -----------------------------------------------------\r\n*    diag  0.0 \r\n#    top  TEST ./tests/layer_reload.vtc FAILED (3.042) exit=2\r\nFAIL tests/layer_reload.vtc (exit status: 2)\r\n\r\n```\r\n</details>","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/112/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/112/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/113","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/113/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/113/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/113/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/113","id":2193407206,"node_id":"I_kwDOBBOOTM6CvLzm","number":113,"title":"7.5 release","user":{"login":"gquintard","id":3776553,"node_id":"MDQ6VXNlcjM3NzY1NTM=","avatar_url":"https://avatars.githubusercontent.com/u/3776553?v=4","gravatar_id":"","url":"https://api.github.com/users/gquintard","html_url":"https://github.com/gquintard","followers_url":"https://api.github.com/users/gquintard/followers","following_url":"https://api.github.com/users/gquintard/following{/other_user}","gists_url":"https://api.github.com/users/gquintard/gists{/gist_id}","starred_url":"https://api.github.com/users/gquintard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gquintard/subscriptions","organizations_url":"https://api.github.com/users/gquintard/orgs","repos_url":"https://api.github.com/users/gquintard/repos","events_url":"https://api.github.com/users/gquintard/events{/privacy}","received_events_url":"https://api.github.com/users/gquintard/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2024-03-18T21:45:09Z","updated_at":"2024-05-15T23:42:10Z","closed_at":"2024-04-09T15:19:21Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi!\r\n\r\ncould we get a release (or a branch, I'm not greedy) targeting 7.5 (`master` targets `trunk` at the moment)? I need it to release the `docker` images","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/113/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/113/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/114","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/114/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/114/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/114/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/114","id":2205936169,"node_id":"I_kwDOBBOOTM6De-op","number":114,"title":"Object resolver not initialized?","user":{"login":"cosimo","id":109366,"node_id":"MDQ6VXNlcjEwOTM2Ng==","avatar_url":"https://avatars.githubusercontent.com/u/109366?v=4","gravatar_id":"","url":"https://api.github.com/users/cosimo","html_url":"https://github.com/cosimo","followers_url":"https://api.github.com/users/cosimo/followers","following_url":"https://api.github.com/users/cosimo/following{/other_user}","gists_url":"https://api.github.com/users/cosimo/gists{/gist_id}","starred_url":"https://api.github.com/users/cosimo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cosimo/subscriptions","organizations_url":"https://api.github.com/users/cosimo/orgs","repos_url":"https://api.github.com/users/cosimo/repos","events_url":"https://api.github.com/users/cosimo/events{/privacy}","received_events_url":"https://api.github.com/users/cosimo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2024-03-25T14:47:12Z","updated_at":"2024-03-25T16:57:37Z","closed_at":"2024-03-25T16:57:37Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi!\r\n\r\nI'm trying to use libvmod_dynamic with varnish 7.4:\r\n* varnishcache/varnish-cache@b659b7ae62b44c05888919c5c1cd03ba6eaec681\r\n* libvmod-dynamic rev: 3697d6f195fe077fe213918b7b67f5da4efdede2\r\n\r\nThis is on Ubuntu 20.04, and I've build `libvmod_dynamic.so` using this Dockerfile: https://gist.github.com/cosimo/314e441313426a93bdfd3438059e44f9\r\n\r\nMy runtime environment is varnish 7.4.3-1~focal on Ubuntu 20.04.6 TLS x86_64 from the `https://packagecloud.io/varnishcache/varnish74/ubuntu/ focal main` debian repository.\r\n\r\nThe relevant VCL code is:\r\n\r\n```\r\nvcl 4.0;\r\nimport dynamic;\r\n\r\nbackend default none;\r\n\r\nsub vcl_init {\r\n    new r = dynamic.resolver();\r\n    new rest = dynamic.director(\r\n      port = \"80\",\r\n      resolver = r.use(),\r\n      ttl_from = dns\r\n    );\r\n}\r\n\r\nsub vcl_recv {\r\n    # `_rest._tcp.example.com` is an SRV record\r\n    set req.backend_hint = rest.backend(\"_rest._tcp.example.com\");\r\n}\r\n```\r\n\r\nWhen starting up varnish, I'm getting the following error:\r\n\r\n```\r\nMar 25 14:27:35 host varnishd[2689915]: Version: varnish-7.4.3 revision b659b7ae62b44c05888919c5c1cd03ba6eaec681\r\nMar 25 14:27:35 host varnishd[2689915]: Platform: Linux,5.15.0-1053-aws,x86_64,-junix,-smalloc,-sdefault,-hcritbit\r\nMar 25 14:27:35 host varnishd[2689915]: Child (2689931) Started\r\nMar 25 14:27:35 host varnishd[2689915]: Child launched OK\r\nMar 25 14:27:35 host varnishd[2689915]: Error: Child (2689931) Pushing vcls failed:\r\nMar 25 14:27:35 host varnishd[2689915]: VCL \"boot\" Failed initialization\r\nMar 25 14:27:35 host varnishd[2689915]: Message:\r\nMar 25 14:27:35 host varnishd[2689915]:         Object r not initialized\r\nMar 25 14:27:35 host varnishd[2689915]: Info: Child (2689931) said Child starts\r\nMar 25 14:27:35 host varnishd[2689915]: Child (2689931) Pushing vcls failed:\r\n                                                                      VCL \"boot\" Failed initialization\r\n                                                                      Message:\r\n                                                                              Object r not initialized\r\nMar 25 14:27:35 host varnishd[2689915]: Stopping Child\r\nMar 25 14:27:35 host varnishd[2689915]: Child (2689931) said Child starts\r\nMar 25 14:27:35 host varnishd[2689915]: Info: Child (2689931) said Child dies\r\nMar 25 14:27:35 host varnishd[2689915]: Info: Child (2689931) ended\r\nMar 25 14:27:35 host varnishd[2689915]: Child (2689931) said Child dies\r\nMar 25 14:27:35 host varnishd[2689915]: Child (2689931) ended\r\nMar 25 14:27:35 host varnishd[2689915]: Child cleanup complete\r\n```\r\n\r\nHave looked at the documentation in the `vmod_dynamic.vcc` but I haven't really understood the reason why the resolver object is not initialized.\r\n\r\nOther things I've noticed:\r\n- When querying `varnishadm backend.list -j` I see that the backends seem to be considered sick, as in:\r\n```\r\nroot@host:/etc/varnish# varnishadm backend.list -j\r\n[ 3, [\"backend.list\", \"-j\"], 1711378545.538,\r\n  {\r\n    \"boot.rest(_rest._tcp.example.com:(null))\": {\r\n      \"type\": \"dynamic\",\r\n      \"admin_health\": \"probe\",\r\n      \"probe_message\": [0, 0, \"sick\"],\r\n      \"last_change\": 1711378480.950\r\n    }\r\n  }\r\n]\r\n```\r\n- I can't seem to be able to use the `ttl_from = dns` option, the error message mentioned that I need to use a `resolver`, which I am indeed doing.\r\n- When running `make check` from inside the Docker container build, 1 test is failing. Here's the output I'm seeing:\r\n\r\n```\r\nPASS: tests/layer.vtc\r\nPASS: tests/r00107.vtc\r\nPASS: tests/stale_obj.vtc\r\nPASS: tests/test01.vtc\r\nPASS: tests/test02.vtc\r\nPASS: tests/test03.vtc\r\nPASS: tests/test04.vtc\r\nPASS: tests/test05.vtc\r\nPASS: tests/test06.vtc\r\nPASS: tests/test07.vtc\r\nPASS: tests/test08.vtc\r\nPASS: tests/test09.vtc\r\nPASS: tests/test10.vtc\r\nPASS: tests/test11.vtc\r\nPASS: tests/test12.vtc\r\nFAIL: tests/test13.vtc\r\nPASS: tests/test14.vtc\r\nPASS: tests/via.vtc\r\n```\r\n\r\nWould you have any guidance, or examples of usage of libvmod-dynamic? I haven't found much doing web searches or checking other repositories on github.\r\n\r\nThanks!","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/114/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/114/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/115","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/115/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/115/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/115/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/115","id":2292508729,"node_id":"I_kwDOBBOOTM6IpOg5","number":115,"title":"Unexpected behavior with new timeouts: \"zero\" timeout despite long defaults","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-05-13T11:10:43Z","updated_at":"2024-05-14T06:44:13Z","closed_at":"2024-05-14T06:43:00Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"logging an issue found by @martin-uplex\r\n\r\nUsing this dynamic director\r\n\r\n```vcl\r\nbackend sslon {\r\n   .path = \"/tmp/varnish_sslon.proxy.sock\";\r\n   .connect_timeout = 5s;\r\n   .first_byte_timeout = 20s;\r\n   .between_bytes_timeout = 20s;\r\n}\r\n\r\nsub vcl_init {\r\n   new https = dynamic.director(via = sslon, port = 443);\r\n}\r\n```\r\n\r\nwith these global timeouts\r\n```\r\nfirst_byte_timeout            300.000 [seconds]\r\nidle_send_timeout             300.000 [seconds]\r\npipe_timeout                  300.000 [seconds]\r\n```\r\n\r\nand no vcl override of timeouts leads to behavior as if a 0 timeout was configured:\r\n\r\n```\r\n--- Timestamp      Fetch: 1715591622.154104 0.008790 0.000009\r\n--- Timestamp      Connected: 1715591622.154129 0.008815 0.000025\r\n--- BackendOpen    644 https.www.site.de(X.X.X.X:443) 0.0.0.0 0 0.0.0.0 0 connect\r\n--- Timestamp      Bereq: 1715591622.154136 0.008822 0.000006\r\n--- FetchError     first byte timeout\r\n--- BackendClose   644 https.www.site.de(X.X.X.X:443) close Receive timeout\r\n--- Timestamp      Beresp: 1715591622.155162 0.009848 0.001025\r\n--- Timestamp      Error: 1715591622.155163 0.009849 0.000000 \r\n```\r\n\r\nThe workaround is to set explicit timeouts in the director.\r\n\r\nProbably related to a7059d4efab10a285c1f57f7e02bbe631cf3a649 / https://github.com/varnishcache/varnish-cache/commit/119056c4d9319155c6c6c2148519d2e8d81d5f76","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/115/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/115/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/116","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/116/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/116/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/116/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/116","id":2315307267,"node_id":"I_kwDOBBOOTM6KAMkD","number":116,"title":"Assert error in getdns_result(): Condition((rr) != 0) not true.","user":{"login":"delthas","id":1863865,"node_id":"MDQ6VXNlcjE4NjM4NjU=","avatar_url":"https://avatars.githubusercontent.com/u/1863865?v=4","gravatar_id":"","url":"https://api.github.com/users/delthas","html_url":"https://github.com/delthas","followers_url":"https://api.github.com/users/delthas/followers","following_url":"https://api.github.com/users/delthas/following{/other_user}","gists_url":"https://api.github.com/users/delthas/gists{/gist_id}","starred_url":"https://api.github.com/users/delthas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/delthas/subscriptions","organizations_url":"https://api.github.com/users/delthas/orgs","repos_url":"https://api.github.com/users/delthas/repos","events_url":"https://api.github.com/users/delthas/events{/privacy}","received_events_url":"https://api.github.com/users/delthas/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-05-24T12:36:39Z","updated_at":"2024-05-27T16:32:51Z","closed_at":"2024-05-27T16:32:40Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Stressing Varnish + libvmod-dynamic with many dynamic backends (with probes), I'm sometimes getting the following panic:\r\n```\r\nAssert error in getdns_result(), dyn_resolver_getdns.c line 259:\r\n  Condition((rr) != 0) not true.\r\nBacktrace:\r\n  0x55bf1d92da92: /usr/sbin/varnishd(+0x5ba92) [0x55bf1d92da92]\r\n  0x55bf1d9aac45: /usr/sbin/varnishd(VAS_Fail+0x45) [0x55bf1d9aac45]\r\n  0x7f845e54e5ec: ./vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4(+0xf5ec) [0x7f845e54e5ec]\r\n  0x7f845e544b65: ./vmod_cache/_vmod_dynamic.29b766e616262ab0ef9252419367ce48fbf642168ba34fc382b1742a77dac5c4(+0x5b65) [0x7f845e544b65]\r\n  0x7f84731cd064: /lib/x86_64-linux-gnu/libpthread.so.0(+0x8064) [0x7f84731cd064]\r\n  0x7f8472f0262d: /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7f8472f0262d]\r\n```\r\nThis refers to the assert here: https://github.com/nigoroll/libvmod-dynamic/blob/master/src/dyn_resolver_getdns.c#L259\r\n\r\nI can't reproduce this on my machine to debug locally, I only got this on a remote server. I think the DNS server there might be having issues; but if this is caused by some DNS server issue we should probably not panic (and instead just add no backend).\r\n\r\nFrom my understanding of the function, this can happen if `getdns_common_more_answers(state) != 0` from the beginning (or if `getdns_common_more_answers(state) == 0` and `getdns_list_get_dict(state->answers, state->answer++, &rr)` gives a NULL `rr`, not sure if that's relevant).","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/116/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/116/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/117","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/117/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/117/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/117/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/117","id":2318884269,"node_id":"I_kwDOBBOOTM6KN12t","number":117,"title":"Still happens: Dynamic Backends can only be added to warm VCLs","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":443804425,"node_id":"MDU6TGFiZWw0NDM4MDQ0MjU=","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/help%20wanted","name":"help wanted","color":"128A0C","default":true,"description":null}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2024-05-27T11:03:00Z","updated_at":"2024-11-14T17:58:05Z","closed_at":"2024-11-14T17:58:04Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"I'm getting the same assert again, but in a slightly different way (even with the fix).\r\n\r\nThe stack is still:\r\n```\r\nWrong turn at cache/cache_vrt_vcl.c:251:\r\nDynamic Backends can only be added to warm VCLs\r\nBacktrace:\r\n  ip=0x5f26789d8ebe sp=0x70bc775fe870 <pan_ic+0x34e>\r\n  ip=0x5f2678aa5985 sp=0x70bc775fe9e0 <VAS_Fail+0x55>\r\n  ip=0x5f2678a0ee86 sp=0x70bc775fea30 <VRT_AddDirector+0x956>\r\n  ip=0x5f267899527d sp=0x70bc775feb80 <VRT_new_backend_clustered+0xc0d>\r\n  ip=0x5f2678995d22 sp=0x70bc775fec80 <VRT_new_backend+0x132>\r\n  ip=0x70bc82abfe61 sp=0x70bc775fecb0 <ref_add+0x660>\r\n  ip=0x70bc82ac0acc sp=0x70bc775ff1d0 <dom_update+0xb69>\r\n  ip=0x70bc82ac1395 sp=0x70bc775ff340 <dom_lookup_thread+0x485>\r\n  ip=0x70bc99399ded sp=0x70bc775ff450\r\n  ip=0x70bc9941d0dc sp=0x70bc775ff500\r\n```\r\n\r\nI'm stressing Varnish + libvmod-dynamic with a lot of VCL reloads. Everything usually works fine for a while (sometimes hours), until Varnish starts to loop on this error, every ~15s to ~1 minute. So, no issues for hours and then once I get this panic, it repeats every ~15s to ~1min: child crashes, child restarts, child crashes, ...\r\n\r\nHere's an excerpt of the full logs:\r\n```\r\nDebug: Child (606349) Started\r\nChild launched OK\r\nInfo: Child (606349) said Child starts\r\nError: Child (606349) not responding to CLI, killed it.\r\nError: Child (606349) not responding to CLI, killed it.\r\nError: Unexpected reply from ping: 400 CLI communication error (hdr)\r\nError: Child (606349) not responding to CLI, killed it.\r\nError: Unexpected reply from ping: 400 CLI communication error\r\nError: Child (606349) died signal=3 (core dumped)\r\nDebug: Child cleanup complete\r\nDebug: Child (645026) Started\r\nChild launched OK\r\nInfo: Child (645026) said Child starts\r\nError: Child (645026) not responding to CLI, killed it.\r\nError: Child (645026) not responding to CLI, killed it.\r\nError: Unexpected reply from ping: 400 CLI communication error\r\nError: Child (645026) died signal=6 (core dumped)\r\nError: Child (645026) Panic at: Fri, 24 May 2024 14:58:32 GMT\r\nWrong turn at cache/cache_vrt_vcl.c:251:\r\nDynamic Backends can only be added to warm VCLs\r\nBacktrace:\r\n  ip=0x6281a32f6ebe sp=0x76e6579fe870 <pan_ic+0x34e>\r\n  ip=0x6281a33c3985 sp=0x76e6579fe9e0 <VAS_Fail+0x55>\r\n  ip=0x6281a332ce86 sp=0x76e6579fea30 <VRT_AddDirector+0x956>\r\n  ip=0x6281a32b327d sp=0x76e6579feb80 <VRT_new_backend_clustered+0xc0d>\r\n  ip=0x6281a32b3d22 sp=0x76e6579fec80 <VRT_new_backend+0x132>\r\n  ip=0x76e661960e61 sp=0x76e6579fecb0 <ref_add+0x660>\r\n  ip=0x76e661961acc sp=0x76e6579ff1d0 <dom_update+0xb69>\r\n  ip=0x76e661962395 sp=0x76e6579ff340 <dom_lookup_thread+0x485>\r\n  ip=0x76e676e3aded sp=0x76e6579ff450\r\n  ip=0x76e676ebe0dc sp=0x76e6579ff500\r\nDebug: Child cleanup complete\r\nDebug: Child (649299) Started\r\nChild launched OK\r\nInfo: Child (649299) said Child starts\r\nError: Child (649299) not responding to CLI, killed it.\r\nError: Child (649299) not responding to CLI, killed it.\r\nError: Unexpected reply from ping: 400 CLI communication error\r\nError: Child (649299) died signal=6 (core dumped)\r\nError: Child (649299) Panic at: Fri, 24 May 2024 14:58:46 GMT\r\nWrong turn at cache/cache_vrt_vcl.c:251:\r\nDynamic Backends can only be added to warm VCLs\r\nBacktrace:\r\n  ip=0x6281a32f6ebe sp=0x76e654bfe870 <pan_ic+0x34e>\r\n  ip=0x6281a33c3985 sp=0x76e654bfe9e0 <VAS_Fail+0x55>\r\n  ip=0x6281a332ce86 sp=0x76e654bfea30 <VRT_AddDirector+0x956>\r\n  ip=0x6281a32b327d sp=0x76e654bfeb80 <VRT_new_backend_clustered+0xc0d>\r\n  ip=0x6281a32b3d22 sp=0x76e654bfec80 <VRT_new_backend+0x132>\r\n  ip=0x76e661686e61 sp=0x76e654bfecb0 <ref_add+0x660>\r\n  ip=0x76e661687acc sp=0x76e654bff1d0 <dom_update+0xb69>\r\n  ip=0x76e661688395 sp=0x76e654bff340 <dom_lookup_thread+0x485>\r\n  ip=0x76e676e3aded sp=0x76e654bff450\r\n  ip=0x76e676ebe0dc sp=0x76e654bff500\r\nDebug: Child cleanup complete\r\nDebug: Child (653709) Started\r\nChild launched OK\r\nInfo: Child (653709) said Child starts\r\nError: Child (653709) not responding to CLI, killed it.\r\nError: Child (653709) not responding to CLI, killed it.\r\nError: Unexpected reply from ping: 400 CLI communication error\r\nError: Child (653709) died signal=6 (core dumped)\r\nError: Child (653709) Panic at: Fri, 24 May 2024 14:59:01 GMT\r\nWrong turn at cache/cache_vrt_vcl.c:251:\r\nDynamic Backends can only be added to warm VCLs\r\nBacktrace:\r\n  ip=0x6281a32f6ebe sp=0x76e6523fe870 <pan_ic+0x34e>\r\n  ip=0x6281a33c3985 sp=0x76e6523fe9e0 <VAS_Fail+0x55>\r\n  ip=0x6281a332ce86 sp=0x76e6523fea30 <VRT_AddDirector+0x956>\r\n  ip=0x6281a32b327d sp=0x76e6523feb80 <VRT_new_backend_clustered+0xc0d>\r\n  ip=0x6281a32b3d22 sp=0x76e6523fec80 <VRT_new_backend+0x132>\r\n  ip=0x76e66099fe61 sp=0x76e6523fecb0 <ref_add+0x660>\r\n  ip=0x76e6609a0acc sp=0x76e6523ff1d0 <dom_update+0xb69>\r\n  ip=0x76e6609a1395 sp=0x76e6523ff340 <dom_lookup_thread+0x485>\r\n  ip=0x76e676e3aded sp=0x76e6523ff450\r\n  ip=0x76e676ebe0dc sp=0x76e6523ff500\r\nDebug: Child cleanup complete\r\nDebug: Child (658076) Started\r\nChild launched OK\r\nInfo: Child (658076) said Child starts\r\nError: Child (658076) not responding to CLI, killed it.\r\nError: Child (658076) not responding to CLI, killed it.\r\nError: Unexpected reply from ping: 400 CLI communication error\r\nError: Child (658076) died signal=6 (core dumped)\r\nError: Child (658076) Panic at: Fri, 24 May 2024 14:59:21 GMT\r\nWrong turn at cache/cache_vrt_vcl.c:251:\r\nDynamic Backends can only be added to warm VCLs\r\nBacktrace:\r\n  ip=0x6281a32f6ebe sp=0x76e655ffe870 <pan_ic+0x34e>\r\n  ip=0x6281a33c3985 sp=0x76e655ffe9e0 <VAS_Fail+0x55>\r\n  ip=0x6281a332ce86 sp=0x76e655ffea30 <VRT_AddDirector+0x956>\r\n  ip=0x6281a32b327d sp=0x76e655ffeb80 <VRT_new_backend_clustered+0xc0d>\r\n  ip=0x6281a32b3d22 sp=0x76e655ffec80 <VRT_new_backend+0x132>\r\n  ip=0x76e6617a5e61 sp=0x76e655ffecb0 <ref_add+0x660>\r\n  ip=0x76e6617a6acc sp=0x76e655fff1d0 <dom_update+0xb69>\r\n  ip=0x76e6617a7395 sp=0x76e655fff340 <dom_lookup_thread+0x485>\r\n  ip=0x76e676e3aded sp=0x76e655fff450\r\n  ip=0x76e676ebe0dc sp=0x76e655fff500\r\nDebug: Child cleanup complete\r\nDebug: Child (662441) Started\r\nChild launched OK\r\nInfo: Child (662441) said Child starts\r\nError: Child (662441) not responding to CLI, killed it.\r\nError: Child (662441) not responding to CLI, killed it.\r\nError: Unexpected reply from ping: 400 CLI communication error\r\nError: Child (662441) died signal=6 (core dumped)\r\nError: Child (662441) Panic at: Fri, 24 May 2024 14:59:38 GMT\r\nWrong turn at cache/cache_vrt_vcl.c:251:\r\nDynamic Backends can only be added to warm VCLs\r\nBacktrace:\r\n  ip=0x6281a32f6ebe sp=0x76e6567fe870 <pan_ic+0x34e>\r\n  ip=0x6281a33c3985 sp=0x76e6567fe9e0 <VAS_Fail+0x55>\r\n  ip=0x6281a332ce86 sp=0x76e6567fea30 <VRT_AddDirector+0x956>\r\n  ip=0x6281a32b327d sp=0x76e6567feb80 <VRT_new_backend_clustered+0xc0d>\r\n  ip=0x6281a32b3d22 sp=0x76e6567fec80 <VRT_new_backend+0x132>\r\n  ip=0x76e662eaae61 sp=0x76e6567fecb0 <ref_add+0x660>\r\n  ip=0x76e662eabacc sp=0x76e6567ff1d0 <dom_update+0xb69>\r\n  ip=0x76e662eac395 sp=0x76e6567ff340 <dom_lookup_thread+0x485>\r\n  ip=0x76e676e3aded sp=0x76e6567ff450\r\n  ip=0x76e676ebe0dc sp=0x76e6567ff500\r\nDebug: Child cleanup complete\r\n```\r\nIt continued crashing in a loop indefinitely for multiple days. I managed to attach to the process and the VCL was indeed COOL at the time of the panic.\r\n\r\n_Originally posted by @delthas in https://github.com/nigoroll/libvmod-dynamic/issues/108#issuecomment-2133195974_\r\n            ","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/117/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/117/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/118","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/118/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/118/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/118/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/118","id":2437742171,"node_id":"I_kwDOBBOOTM6RTP5b","number":118,"title":"Assert error in VRT_Assign_Backend() Condition(vdir->refcnt > 0)","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2024-07-30T12:39:14Z","updated_at":"2024-07-31T13:00:03Z","closed_at":"2024-07-31T13:00:03Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"https://github.com/nigoroll/libvmod-dynamic/commit/d8eea028563837e74b8d7f1467c0a8118f6cfc6d exposes what looks like a race between expiry of a newly created backend and resolution.\r\n\r\n```\r\nAssert error in VRT_Assign_Backend(), cache/cache_vrt_vcl.c line 346:\r\n  Condition(vdir->refcnt > 0) not true.\r\nversion = varnish-trunk revision c79f57fc116a958631c79e1c24f57e729df17850, vrt api = 19.1\r\nident = Linux,6.1.0-15-amd64,x86_64,-jnone,-sdefault,-sdefault,-hcritbit,epoll\r\nnow = 13523.786472 (mono), 1722337142.480783 (real)\r\nBacktrace:\r\n  ip=0x5625db174ee5 sp=0x7fea20456180 <VBT_format+0x35>\r\n  ip=0x5625db0ad0b3 sp=0x7fea204561a0 <pan_backtrace+0x33>\r\n  ip=0x5625db0acdfa sp=0x7fea204561c0 <pan_ic+0x37a>\r\n  ip=0x5625db174115 sp=0x7fea20456340 <VAS_Fail+0x55>\r\n  ip=0x5625db0e2e17 sp=0x7fea20456390 <VRT_Assign_Backend+0x2b7>\r\n  ip=0x7fea2f4111e6 sp=0x7fea204563c0 <dynamic_task_ref+0x86>\r\n  ip=0x7fea2f412d50 sp=0x7fea204563e0 <dom_resolve+0x100>\r\n  ip=0x5625db081835 sp=0x7fea20456410 <VRT_DirectorResolve+0x165>\r\n  ip=0x7fea165faf62 sp=0x7fea20456440\r\n  ip=0x5625db0e4e6c sp=0x7fea20456490 <vcl_call_method+0x61c>\r\n  ip=0x5625db0e6c70 sp=0x7fea204565d0 <VCL_synth_method+0x1e0>\r\n```\r\n","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/118/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/118/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/119","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/119/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/119/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/119/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/119","id":2472659871,"node_id":"I_kwDOBBOOTM6TYcuf","number":119,"title":"IPv6 backends remain sick - Varnish 7.4.3, vmod_dynamic 2.8.0","user":{"login":"gerhard","id":3342,"node_id":"MDQ6VXNlcjMzNDI=","avatar_url":"https://avatars.githubusercontent.com/u/3342?v=4","gravatar_id":"","url":"https://api.github.com/users/gerhard","html_url":"https://github.com/gerhard","followers_url":"https://api.github.com/users/gerhard/followers","following_url":"https://api.github.com/users/gerhard/following{/other_user}","gists_url":"https://api.github.com/users/gerhard/gists{/gist_id}","starred_url":"https://api.github.com/users/gerhard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gerhard/subscriptions","organizations_url":"https://api.github.com/users/gerhard/orgs","repos_url":"https://api.github.com/users/gerhard/repos","events_url":"https://api.github.com/users/gerhard/events{/privacy}","received_events_url":"https://api.github.com/users/gerhard/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-08-19T07:32:03Z","updated_at":"2024-08-19T09:58:57Z","closed_at":"2024-08-19T09:58:57Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Given the following DNS records:\r\n\r\n```console\r\ndig changelog-2024-01-12.internal AAAA +short\r\nfdaa:0:4556:a7b:303:5118:aa8a:2\r\nfdaa:0:4556:a7b:303:ccc2:4a66:2\r\n```\r\n\r\nAnd the following dynamic backend config:\r\n\r\n```vcl\r\nbackend default none;\r\n\r\nprobe changelog_health {\r\n  .url = \"/health\";\r\n  .interval = 5s;\r\n  .timeout = 2s;\r\n  .window = 10;\r\n  .threshold = 5;\r\n}\r\n\r\n# Define IPv6 only ACL for the module\r\nacl ipv6_only { \"::0\"/0; }\r\n\r\n# Setup a dynamic director\r\nsub vcl_init {\r\n  new changelog = dynamic.director(\r\n    ttl = 1m,\r\n    probe = changelog_health,\r\n    first_byte_timeout = 5s,\r\n    connect_timeout = 5s,\r\n    between_bytes_timeout = 30s,\r\n    whitelist = ipv6_only\r\n  );\r\n}\r\n\r\nsub vcl_recv {\r\n  set req.backend_hint = changelog.backend(\"changelog-2024-01-12.internal\", \"4000\");\r\n}\r\n\r\n```\r\n\r\nEven though the backends are resolved correctly, they remain sick:\r\n\r\n```console\r\nvarnishadm backend.list\r\nBackend name                                         Admin  Probe  Health  Last change\r\nboot.changelog(changelog-2024-01-12.internal:4000)   probe  0/2    sick    Mon, 19 Aug 2024 07:17:07 GMT\r\nboot.changelog(fdaa:0:4556:a7b:303:5118:aa8a:2:4000) probe  0/10   sick    Mon, 19 Aug 2024 07:17:07 GMT\r\nboot.changelog(fdaa:0:4556:a7b:303:ccc2:4a66:2:4000) probe  0/10   sick    Mon, 19 Aug 2024 07:17:07 GMT\r\n```\r\n\r\nThis is what I see in `varnishlog`:\r\n\r\n```console\r\nvarnishlog -g raw -i backend_health\r\n         0 Backend_health - changelog(fdaa:0:4556:a7b:303:ccc2:4a66:2:4000) Still sick -6--X-R- 0 5 10 0.001638 0.000000 \"HTTP/1.1 400 Bad Request\"\r\n         0 Backend_health - changelog(fdaa:0:4556:a7b:303:5118:aa8a:2:4000) Still sick -6--X-R- 0 5 10 0.001533 0.000000 \"HTTP/1.1 400 Bad Request\"\r\n         0 Backend_health - changelog(fdaa:0:4556:a7b:303:5118:aa8a:2:4000) Still sick -6--X-R- 0 5 10 0.001314 0.000000 \"HTTP/1.1 400 Bad Request\"\r\n         0 Backend_health - changelog(fdaa:0:4556:a7b:303:ccc2:4a66:2:4000) Still sick -6--X-R- 0 5 10 0.001499 0.000000 \"HTTP/1.1 400 Bad Request\"\r\n...\r\n```\r\n\r\nAnd yet if I use `curl`, both these backends work:\r\n\r\n```console\r\ncurl -v6 http://[fdaa:0:4556:a7b:303:ccc2:4a66:2]:4000/health\r\n*   Trying [fdaa:0:4556:a7b:303:ccc2:4a66:2]:4000...\r\n* Connected to fdaa:0:4556:a7b:303:ccc2:4a66:2 (fdaa:0:4556:a7b:303:ccc2:4a66:2) port 4000 (#0)\r\n> GET /health HTTP/1.1\r\n> Host: [fdaa:0:4556:a7b:303:ccc2:4a66:2]:4000\r\n> User-Agent: curl/7.88.1\r\n> Accept: */*\r\n>\r\n< HTTP/1.1 200 OK\r\n< cache-control: max-age=0, private, must-revalidate\r\n< content-length: 0\r\n< date: Mon, 19 Aug 2024 07:28:15 GMT\r\n< server: Cowboy\r\n<\r\n* Connection #0 to host fdaa:0:4556:a7b:303:ccc2:4a66:2 left intact\r\n\r\ncurl -v6 http://[fdaa:0:4556:a7b:303:5118:aa8a:2]:4000/health\r\n*   Trying [fdaa:0:4556:a7b:303:5118:aa8a:2]:4000...\r\n* Connected to fdaa:0:4556:a7b:303:5118:aa8a:2 (fdaa:0:4556:a7b:303:5118:aa8a:2) port 4000 (#0)\r\n> GET /health HTTP/1.1\r\n> Host: [fdaa:0:4556:a7b:303:5118:aa8a:2]:4000\r\n> User-Agent: curl/7.88.1\r\n> Accept: */*\r\n>\r\n< HTTP/1.1 200 OK\r\n< cache-control: max-age=0, private, must-revalidate\r\n< content-length: 0\r\n< date: Mon, 19 Aug 2024 07:28:48 GMT\r\n< server: Cowboy\r\n<\r\n* Connection #0 to host fdaa:0:4556:a7b:303:5118:aa8a:2 left intact\r\n```\r\n\r\nI **think** that the backend IPv6 is not interpolated correctly - `changelog(fdaa:0:4556:a7b:303:ccc2:4a66:2:4000)` should be `changelog([fdaa:0:4556:a7b:303:ccc2:4a66:2]:4000)` but maybe the formatting is misleading me.\r\n\r\nIs there anything that I could do to debug this further?\r\n\r\n---\r\n\r\n- Varnish `7.4.3`\r\n- vmod_dynamic `2.8.0` [15e32fb](https://github.com/nigoroll/libvmod-dynamic/tree/15e32fb8cf96752c90d895b0ca31451bd05d92d9)\r\n- Deployed to Fly.io, uses [`.internal` domain](https://fly.io/docs/networking/private-networking/#fly-io-internal-dns)\r\n\r\n---\r\n\r\nFTR:\r\n- https://github.com/thechangelog/changelog.com/pull/518\r\n- https://github.com/thechangelog/pipedream/pull/1","closed_by":{"login":"gerhard","id":3342,"node_id":"MDQ6VXNlcjMzNDI=","avatar_url":"https://avatars.githubusercontent.com/u/3342?v=4","gravatar_id":"","url":"https://api.github.com/users/gerhard","html_url":"https://github.com/gerhard","followers_url":"https://api.github.com/users/gerhard/followers","following_url":"https://api.github.com/users/gerhard/following{/other_user}","gists_url":"https://api.github.com/users/gerhard/gists{/gist_id}","starred_url":"https://api.github.com/users/gerhard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gerhard/subscriptions","organizations_url":"https://api.github.com/users/gerhard/orgs","repos_url":"https://api.github.com/users/gerhard/repos","events_url":"https://api.github.com/users/gerhard/events{/privacy}","received_events_url":"https://api.github.com/users/gerhard/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/119/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/119/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/120","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/120/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/120/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/120/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/120","id":2494183718,"node_id":"I_kwDOBBOOTM6Uqjkm","number":120,"title":"Help wanted: configure dynamic backend via SRV Records","user":{"login":"am4rth","id":96725262,"node_id":"U_kgDOBcPpDg","avatar_url":"https://avatars.githubusercontent.com/u/96725262?v=4","gravatar_id":"","url":"https://api.github.com/users/am4rth","html_url":"https://github.com/am4rth","followers_url":"https://api.github.com/users/am4rth/followers","following_url":"https://api.github.com/users/am4rth/following{/other_user}","gists_url":"https://api.github.com/users/am4rth/gists{/gist_id}","starred_url":"https://api.github.com/users/am4rth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/am4rth/subscriptions","organizations_url":"https://api.github.com/users/am4rth/orgs","repos_url":"https://api.github.com/users/am4rth/repos","events_url":"https://api.github.com/users/am4rth/events{/privacy}","received_events_url":"https://api.github.com/users/am4rth/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2024-08-29T11:34:24Z","updated_at":"2024-08-30T06:07:11Z","closed_at":"2024-08-30T06:07:11Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hello,\r\n\r\ni'm currently tring to get varnish running with dynamic backend servers provied via SRV DNS Records.\r\n\r\nResolving the domains via `host` is no problem, the following data is returned:\r\n```\r\n# host -t SRV service.namespace.local\r\nservice.namespace.localhas SRV record 1 1 32768 995a7bee76fa40b194e2b761b9dfb90a.service.namespace.local.\r\n```\r\nThis is my varnish config:\r\n```\r\nbackend default none;\r\n\r\nsub vcl_init {\r\n  new r = dynamic.resolver();\r\n  new d = dynamic.director(\r\n          resolver = r.use(),\r\n  );\r\n}\r\n\r\nsub vcl_recv {\r\n    set req.backend_hint = d.service(\"service.namespace.local\");\r\n    \r\n    # more config to come\r\n}\r\n```\r\n\r\nWhen ever I try to perform a request, the resolution via getdns seems to fail:\r\n```\r\n0 Timestamp      - vmod-dynamic boot.d(srv service.namespace.local) Lookup: 1724930480.177774 0.000000 0.000000\r\n0 Timestamp      - vmod-dynamic boot.d(srv service.namespace.local) Results: 1724930480.177919 0.000145 0.000145\r\n0 Error          - vmod-dynamic boot d service.namespace.local getdns 901 (Queries for the name yielded all negative responses)\r\n```\r\n\r\nDo I miss something? Sorry if it's a obvious problem, not as experienced in varnish config.\r\n\r\nThanks in advance!","closed_by":{"login":"am4rth","id":96725262,"node_id":"U_kgDOBcPpDg","avatar_url":"https://avatars.githubusercontent.com/u/96725262?v=4","gravatar_id":"","url":"https://api.github.com/users/am4rth","html_url":"https://github.com/am4rth","followers_url":"https://api.github.com/users/am4rth/followers","following_url":"https://api.github.com/users/am4rth/following{/other_user}","gists_url":"https://api.github.com/users/am4rth/gists{/gist_id}","starred_url":"https://api.github.com/users/am4rth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/am4rth/subscriptions","organizations_url":"https://api.github.com/users/am4rth/orgs","repos_url":"https://api.github.com/users/am4rth/repos","events_url":"https://api.github.com/users/am4rth/events{/privacy}","received_events_url":"https://api.github.com/users/am4rth/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/120/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/120/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/121","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/121/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/121/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/121/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/121","id":2528087988,"node_id":"I_kwDOBBOOTM6Wr4-0","number":121,"title":"via_uds.vtc fails when run as root","user":{"login":"delthas","id":1863865,"node_id":"MDQ6VXNlcjE4NjM4NjU=","avatar_url":"https://avatars.githubusercontent.com/u/1863865?v=4","gravatar_id":"","url":"https://api.github.com/users/delthas","html_url":"https://github.com/delthas","followers_url":"https://api.github.com/users/delthas/followers","following_url":"https://api.github.com/users/delthas/following{/other_user}","gists_url":"https://api.github.com/users/delthas/gists{/gist_id}","starred_url":"https://api.github.com/users/delthas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/delthas/subscriptions","organizations_url":"https://api.github.com/users/delthas/orgs","repos_url":"https://api.github.com/users/delthas/repos","events_url":"https://api.github.com/users/delthas/events{/privacy}","received_events_url":"https://api.github.com/users/delthas/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-09-16T10:34:16Z","updated_at":"2024-09-17T08:33:00Z","closed_at":"2024-09-17T08:33:00Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"On my build server (VM, running as root), `make check` fails because `via_uds.vtc` fails.\r\n\r\nThe cause is that `v2`, making a connection to `v1` over a UDS, fails to connect, with `FetchError      b backend d1.localhost(127.0.0.1:45103): fail errno 13 (Permission denied)`. Looking into this further I can see that the `v2.sock` is created as `root:root` but the worker processes run as `vcache`, so it is normal that the connection is denied?\r\n\r\nAdding `-arg \"-j none\"` to the `varnish` commands in the VTC makes the test pass.\r\n\r\nI've made the following reproducer MWE (a heavily trimmed down via_uds):\r\n```vtc\r\nvarnishtest \"basic uds\"\r\n\r\nserver s1 {\r\n\trxreq\r\n\ttxresp\r\n} -start\r\n\r\nvarnish v2 -arg \"-a uds=${tmpdir}/v2.sock\" -vcl+backend {\r\n} -start\r\n\r\nvarnish v1 -vcl {\r\n\tbackend v2 { .path = \"${tmpdir}/v2.sock\"; }\r\n\r\n\tsub vcl_recv {\r\n\t\tset req.backend_hint = v2;\r\n\t}\r\n} -start\r\n\r\n# Uncomment in order to examine system state\r\n# delay 20\r\n\r\nclient c1 {\r\n\ttxreq\r\n\trxresp\r\n\texpect resp.status == 200\r\n} -run\r\n```\r\n\r\nRunning these commands during the delay shows the issue:\r\n\r\n```shell\r\n# ls -lA /tmp/vtc.2754.159e675b/\r\ntotal 12\r\n-rw-r--r-- 1 root root      24 Sep 16 12:30 INFO\r\ndrwxr-xr-x 7 root varnish 4096 Sep 16 12:30 v1\r\ndrwxr-xr-x 7 root varnish 4096 Sep 16 12:30 v2\r\nsrwxr-xr-x 1 root root       0 Sep 16 12:30 v2.sock\r\n```\r\n\r\n`v2.sock` is `root:root`\r\n\r\n```shell\r\n# ps aux | grep varnishd\r\nvarnish     2878  0.0  0.1  39396 12356 pts/0    SL   12:30   0:00 varnishd -d -n /tmp/vtc.2872.33571ff0/v2 -i v2 -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -M 127.0.0.1 37205 -P /tmp/vtc.2872.33571ff0/v2/varnishd.pid -a uds=/tmp/vtc.2872.33571ff0/v2.sock\r\nvcache      2894  1.0  0.7 217572 63596 pts/0    SLl  12:30   0:00 varnishd -d -n /tmp/vtc.2872.33571ff0/v2 -i v2 -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -M 127.0.0.1 37205 -P /tmp/vtc.2872.33571ff0/v2/varnishd.pid -a uds=/tmp/vtc.2872.33571ff0/v2.sock\r\nvarnish     2933  0.5  0.1  39396 10312 pts/0    SL   12:30   0:00 varnishd -d -n /tmp/vtc.2872.33571ff0/v1 -i v1 -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a 127.0.0.1:0 -M 127.0.0.1 33001 -P /tmp/vtc.2872.33571ff0/v1/varnishd.pid\r\nvcache      2949  2.0  0.7 217572 63568 pts/0    SLl  12:30   0:00 varnishd -d -n /tmp/vtc.2872.33571ff0/v1 -i v1 -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a 127.0.0.1:0 -M 127.0.0.1 33001 -P /tmp/vtc.2872.33571ff0/v1/varnishd.pid\r\n```\r\n\r\nMasters are `varnish`, workers are `vcache`, not `root`.\r\n\r\n---\r\n\r\n[Full original failing VTC](https://github.com/user-attachments/files/17011618/vtc.txt)\r\n","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/121/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/121/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/122","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/122/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/122/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/122/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/122","id":2529375190,"node_id":"I_kwDOBBOOTM6WwzPW","number":122,"title":"7.6 branch","user":{"login":"gquintard","id":3776553,"node_id":"MDQ6VXNlcjM3NzY1NTM=","avatar_url":"https://avatars.githubusercontent.com/u/3776553?v=4","gravatar_id":"","url":"https://api.github.com/users/gquintard","html_url":"https://github.com/gquintard","followers_url":"https://api.github.com/users/gquintard/followers","following_url":"https://api.github.com/users/gquintard/following{/other_user}","gists_url":"https://api.github.com/users/gquintard/gists{/gist_id}","starred_url":"https://api.github.com/users/gquintard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gquintard/subscriptions","organizations_url":"https://api.github.com/users/gquintard/orgs","repos_url":"https://api.github.com/users/gquintard/repos","events_url":"https://api.github.com/users/gquintard/events{/privacy}","received_events_url":"https://api.github.com/users/gquintard/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2024-09-16T20:10:00Z","updated_at":"2024-11-14T18:18:22Z","closed_at":"2024-11-14T18:18:22Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"can we get a release/branch/tag that will work with an installed Varnish please 7.6.\r\n\r\nRight now I'm getting the usual:\r\n```\r\nchecking for Varnish... 7.6.0\r\nconfigure: error: Varnish version trunk or higher is required.\r\n```","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/122/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/122/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/123","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/123/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/123/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/123/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/123","id":2529383907,"node_id":"PR_kwDOBBOOTM57q3Nt","number":123,"title":"require 7.6","user":{"login":"gquintard","id":3776553,"node_id":"MDQ6VXNlcjM3NzY1NTM=","avatar_url":"https://avatars.githubusercontent.com/u/3776553?v=4","gravatar_id":"","url":"https://api.github.com/users/gquintard","html_url":"https://github.com/gquintard","followers_url":"https://api.github.com/users/gquintard/followers","following_url":"https://api.github.com/users/gquintard/following{/other_user}","gists_url":"https://api.github.com/users/gquintard/gists{/gist_id}","starred_url":"https://api.github.com/users/gquintard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gquintard/subscriptions","organizations_url":"https://api.github.com/users/gquintard/orgs","repos_url":"https://api.github.com/users/gquintard/repos","events_url":"https://api.github.com/users/gquintard/events{/privacy}","received_events_url":"https://api.github.com/users/gquintard/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2024-09-16T20:13:30Z","updated_at":"2024-11-14T18:18:55Z","closed_at":"2024-11-14T18:18:55Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/123","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/123","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/123.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/123.patch","merged_at":null},"body":"just opening this PR so I can find that commit in this repository to build the Docker image","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/123/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/123/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/124","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/124/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/124/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/124/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/124","id":2530432380,"node_id":"I_kwDOBBOOTM6W01V8","number":124,"title":"Add wait_timeout & wait_limit","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":443804424,"node_id":"MDU6TGFiZWw0NDM4MDQ0MjQ=","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/enhancement","name":"enhancement","color":"84b6eb","default":true,"description":null}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-09-17T08:36:29Z","updated_at":"2024-11-14T17:42:57Z","closed_at":"2024-11-14T17:42:57Z","author_association":"OWNER","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Ref https://github.com/varnishcache/varnish-cache/pull/4030","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/124/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/124/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/125","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/125/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/125/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/125/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/125","id":2542835261,"node_id":"PR_kwDOBBOOTM58YWGF","number":125,"title":"Fix layer_probe.vtc: dynamic -> ${vmod_dynamic}","user":{"login":"delthas","id":1863865,"node_id":"MDQ6VXNlcjE4NjM4NjU=","avatar_url":"https://avatars.githubusercontent.com/u/1863865?v=4","gravatar_id":"","url":"https://api.github.com/users/delthas","html_url":"https://github.com/delthas","followers_url":"https://api.github.com/users/delthas/followers","following_url":"https://api.github.com/users/delthas/following{/other_user}","gists_url":"https://api.github.com/users/delthas/gists{/gist_id}","starred_url":"https://api.github.com/users/delthas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/delthas/subscriptions","organizations_url":"https://api.github.com/users/delthas/orgs","repos_url":"https://api.github.com/users/delthas/repos","events_url":"https://api.github.com/users/delthas/events{/privacy}","received_events_url":"https://api.github.com/users/delthas/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-09-23T14:24:56Z","updated_at":"2024-09-24T09:57:53Z","closed_at":"2024-09-24T09:57:53Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/125","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/125","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/125.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/125.patch","merged_at":"2024-09-24T09:57:53Z"},"body":null,"closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/125/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/125/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/126","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/126/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/126/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/126/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/126","id":2652670463,"node_id":"I_kwDOBBOOTM6eHIn_","number":126,"title":"503 on first request for Dynamic Backends with probe","user":{"login":"ronald-sz","id":97725423,"node_id":"U_kgDOBdMr7w","avatar_url":"https://avatars.githubusercontent.com/u/97725423?v=4","gravatar_id":"","url":"https://api.github.com/users/ronald-sz","html_url":"https://github.com/ronald-sz","followers_url":"https://api.github.com/users/ronald-sz/followers","following_url":"https://api.github.com/users/ronald-sz/following{/other_user}","gists_url":"https://api.github.com/users/ronald-sz/gists{/gist_id}","starred_url":"https://api.github.com/users/ronald-sz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronald-sz/subscriptions","organizations_url":"https://api.github.com/users/ronald-sz/orgs","repos_url":"https://api.github.com/users/ronald-sz/repos","events_url":"https://api.github.com/users/ronald-sz/events{/privacy}","received_events_url":"https://api.github.com/users/ronald-sz/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-11-12T16:21:14Z","updated_at":"2024-11-12T17:06:26Z","closed_at":"2024-11-12T17:06:25Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi Nils, \r\n\r\nwe are using Varnish 7.5. \r\n\r\nAfter a fresh start of Varnish I do not see any dynamic backends when I use `backend.list` in `varnishadm`. \r\n\r\nThis seems normal and after a first request a backend is generated. I suppose this happens as soon as Varnish executes the VCL-code:\r\n\r\n`set req.backend_hint = xxx.backend(\"xxxyyyzzz\");`\r\n\r\nIf there is no probe attached to this backend then the request is answered by a 200 response. \r\n\r\nAfter adding a probe to the backend the first request gets answered by a 503 response. \r\n\r\n```\r\nprobe readyCheckDefault {\r\n  .url = \"/readyCheck\";\r\n  .timeout = 1s;\r\n  .interval = 3s;\r\n  .window = 5;\r\n  .threshold = 4;\r\n}\r\n\r\nnew xxx = dynamic.director(ttl = 10s, port = 3000, probe = readyCheckDefault);\r\n```\r\n\r\nIs this how it is supposed to work? Is this a bug? A misconfiguration on our side? \r\n\r\nThanks,\r\nRonald","closed_by":{"login":"ronald-sz","id":97725423,"node_id":"U_kgDOBdMr7w","avatar_url":"https://avatars.githubusercontent.com/u/97725423?v=4","gravatar_id":"","url":"https://api.github.com/users/ronald-sz","html_url":"https://github.com/ronald-sz","followers_url":"https://api.github.com/users/ronald-sz/followers","following_url":"https://api.github.com/users/ronald-sz/following{/other_user}","gists_url":"https://api.github.com/users/ronald-sz/gists{/gist_id}","starred_url":"https://api.github.com/users/ronald-sz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronald-sz/subscriptions","organizations_url":"https://api.github.com/users/ronald-sz/orgs","repos_url":"https://api.github.com/users/ronald-sz/repos","events_url":"https://api.github.com/users/ronald-sz/events{/privacy}","received_events_url":"https://api.github.com/users/ronald-sz/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/126/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/126/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/127","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/127/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/127/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/127/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/127","id":2653837938,"node_id":"PR_kwDOBBOOTM6BtTLv","number":127,"title":"Add `wait_timeout` and `wait_limit` support","user":{"login":"karlvr","id":1086005,"node_id":"MDQ6VXNlcjEwODYwMDU=","avatar_url":"https://avatars.githubusercontent.com/u/1086005?v=4","gravatar_id":"","url":"https://api.github.com/users/karlvr","html_url":"https://github.com/karlvr","followers_url":"https://api.github.com/users/karlvr/followers","following_url":"https://api.github.com/users/karlvr/following{/other_user}","gists_url":"https://api.github.com/users/karlvr/gists{/gist_id}","starred_url":"https://api.github.com/users/karlvr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/karlvr/subscriptions","organizations_url":"https://api.github.com/users/karlvr/orgs","repos_url":"https://api.github.com/users/karlvr/repos","events_url":"https://api.github.com/users/karlvr/events{/privacy}","received_events_url":"https://api.github.com/users/karlvr/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2024-11-13T01:33:57Z","updated_at":"2024-11-14T20:27:50Z","closed_at":"2024-11-14T17:29:35Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/127","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/127","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/127.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/127.patch","merged_at":"2024-11-14T17:29:35Z"},"body":"Support the new backend parameters added in Varnish 7.6 for backend connection queuing as per https://varnish-cache.org/docs/7.6/whats-new/changes-7.6.html","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/127/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/127/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/128","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/128/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/128/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/128/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/128","id":2653848083,"node_id":"PR_kwDOBBOOTM6BtVfz","number":128,"title":"Least connections algorithm","user":{"login":"karlvr","id":1086005,"node_id":"MDQ6VXNlcjEwODYwMDU=","avatar_url":"https://avatars.githubusercontent.com/u/1086005?v=4","gravatar_id":"","url":"https://api.github.com/users/karlvr","html_url":"https://github.com/karlvr","followers_url":"https://api.github.com/users/karlvr/followers","following_url":"https://api.github.com/users/karlvr/following{/other_user}","gists_url":"https://api.github.com/users/karlvr/gists{/gist_id}","starred_url":"https://api.github.com/users/karlvr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/karlvr/subscriptions","organizations_url":"https://api.github.com/users/karlvr/orgs","repos_url":"https://api.github.com/users/karlvr/repos","events_url":"https://api.github.com/users/karlvr/events{/privacy}","received_events_url":"https://api.github.com/users/karlvr/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":443804424,"node_id":"MDU6TGFiZWw0NDM4MDQ0MjQ=","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/enhancement","name":"enhancement","color":"84b6eb","default":true,"description":null},{"id":2228311103,"node_id":"MDU6TGFiZWwyMjI4MzExMTAz","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/needs%20%E2%99%A1Sponsor","name":"needs ♡Sponsor","color":"e094d3","default":false,"description":"looking for support ♥"},{"id":2228316027,"node_id":"MDU6TGFiZWwyMjI4MzE2MDI3","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/needs%20varnish-cache","name":"needs varnish-cache","color":"006b75","default":false,"description":"needs work in varnish-cache"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2024-11-13T01:39:43Z","updated_at":"2025-03-06T15:09:59Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/128","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/128","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/128.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/128.patch","merged_at":null},"body":"Perhaps to reopen the conversation from #71, I have ported just the _least connections_ algorithm to the master branch. We have abandoned the weighted and slow start that complicated the previous implementation. We have been using `LEAST` in production for > 5 years. We've tried switching back to the default `RR` implementation but experience issues when one of our backends runs slowly.\r\n\r\nAs you noted in #71 it isn't a guarantee of least connections (as the connection is not reserved) however we are treating it as a heuristic, and as such it has worked really well for us.\r\n\r\nAgain, if you're interested, I am happy to work this code to get it into a shape you like. I've tried to reproduce the basic logic from `dom_find` in `dom_find_leastconn` without worrying about the `alt` behaviour as it uses `dom_find` as a fall-back anyway. I look forward to hearing your thoughts when you have the time & energy!","closed_by":null,"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/128/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/128/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/129","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/129/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/129/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/129/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/129","id":2702623880,"node_id":"I_kwDOBBOOTM6hFsSI","number":129,"title":"503 for first page load after starting Varnish, no backends listed","user":{"login":"poshaughnessy","id":151207,"node_id":"MDQ6VXNlcjE1MTIwNw==","avatar_url":"https://avatars.githubusercontent.com/u/151207?v=4","gravatar_id":"","url":"https://api.github.com/users/poshaughnessy","html_url":"https://github.com/poshaughnessy","followers_url":"https://api.github.com/users/poshaughnessy/followers","following_url":"https://api.github.com/users/poshaughnessy/following{/other_user}","gists_url":"https://api.github.com/users/poshaughnessy/gists{/gist_id}","starred_url":"https://api.github.com/users/poshaughnessy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/poshaughnessy/subscriptions","organizations_url":"https://api.github.com/users/poshaughnessy/orgs","repos_url":"https://api.github.com/users/poshaughnessy/repos","events_url":"https://api.github.com/users/poshaughnessy/events{/privacy}","received_events_url":"https://api.github.com/users/poshaughnessy/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2024-11-28T15:59:50Z","updated_at":"2024-11-29T16:27:33Z","closed_at":"2024-11-29T16:27:05Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi. Using this vmod (v7.5) for the first time, need some help please!\r\n\r\nWhen I start Varnish up (Mac, with `sudo varnishd -F -a 127.0.0.1:80 -f $(pwd)/varnish-local.vcl -s file,/tmp,500M`) and run `sudo varnishadm backend.list`, I see an empty list of backends.\r\n\r\nAnd when I try to load the page the first time, I get a `503` error. Varnishlog says `fail errno 61 (Connection refused)`. \r\n\r\nThis happens every time I stop and restart Varnish. _After_ the first page load, then the backend does appear in the list, is shown as `healthy`, and subsequent page loads work OK.\r\n\r\nThe backend application is up the whole time and I can't think why it wouldn't be able to connect the first time. I can't see any logs for the backend application which would indicate a request coming through, for the first page load.\r\n\r\nFull varnishlog for the problematic first request:\r\n\r\n```\r\n*   << BeReq    >> 3         \r\n-   Begin          bereq 2 fetch\r\n-   VCL_use        boot\r\n-   Timestamp      Start: 1732807418.475018 0.000000 0.000000\r\n-   BereqMethod    GET\r\n-   BereqURL       /ecom/products/<obfuscated>\r\n-   BereqProtocol  HTTP/1.1\r\n-   BereqHeader    Host: localhost\r\n-   BereqHeader    sec-ch-ua: \"Google Chrome\";v=\"131\", \"Chromium\";v=\"131\", \"Not_A Brand\";v=\"24\"\r\n-   BereqHeader    sec-ch-ua-mobile: ?0\r\n-   BereqHeader    sec-ch-ua-platform: \"macOS\"\r\n-   BereqHeader    Upgrade-Insecure-Requests: 1\r\n-   BereqHeader    User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36\r\n-   BereqHeader    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7\r\n-   BereqHeader    Sec-Fetch-Site: none\r\n-   BereqHeader    Sec-Fetch-Mode: navigate\r\n-   BereqHeader    Sec-Fetch-User: ?1\r\n-   BereqHeader    Sec-Fetch-Dest: document\r\n-   BereqHeader    Accept-Language: en-GB,en-US;q=0.9,en;q=0.8\r\n-   BereqHeader    X-Forwarded-For: 127.0.0.1\r\n-   BereqHeader    Via: 1.1 HO-LAR17GRWNW7J (Varnish/7.5)\r\n-   BereqHeader    X-Iso-Timestamp: Thu, 28 Nov 2024 15:23:38 GMT\r\n-   BereqHeader    X-Esi-Request: false\r\n-   BereqHeader    X-Has-Token-Session: false\r\n-   BereqHeader    Cookie: X-Has-Token-Session=false\r\n-   BereqHeader    X-Mfe-Type: page\r\n-   BereqHeader    X-Cookie-Consent-Given: false\r\n-   BereqHeader    X-Functional-Cookie-Accepted: false\r\n-   BereqHeader    X-Analytics-Cookie-Accepted: false\r\n-   BereqHeader    X-Advertising-Cookie-Accepted: false\r\n-   BereqHeader    Accept-Encoding: gzip\r\n-   BereqHeader    X-Cache: MISS\r\n-   BereqHeader    X-Varnish: 3\r\n-   VCL_call       BACKEND_FETCH\r\n-   VCL_return     fetch\r\n-   Timestamp      Fetch: 1732807418.475039 0.000020 0.000020\r\n-   FetchError     backend browse(127.0.0.1:9190): fail errno 61 (Connection refused)\r\n-   Timestamp      Beresp: 1732807418.481269 0.006250 0.006229\r\n-   Timestamp      Error: 1732807418.481271 0.006253 0.000002\r\n-   BerespProtocol HTTP/1.1\r\n-   BerespStatus   503\r\n-   BerespReason   Backend fetch failed\r\n-   BerespHeader   Date: Thu, 28 Nov 2024 15:23:38 GMT\r\n-   BerespHeader   Server: Varnish\r\n-   VCL_call       BACKEND_ERROR\r\n-   BerespHeader   X-Log-Priority: ERROR\r\n-   BerespHeader   X-Varnish-Backend: browse\r\n-   BerespHeader   Content-Type: text/html; charset=utf-8\r\n-   BerespHeader   Retry-After: 5\r\n-   VCL_return     deliver\r\n-   Storage        malloc Transient\r\n-   Length         278\r\n-   BereqAcct      0 0 0 0 0 0\r\n-   End            \r\n\r\n*   << Request  >> 2         \r\n-   Begin          req 1 rxreq\r\n-   Timestamp      Start: 1732807418.471300 0.000000 0.000000\r\n-   Timestamp      Req: 1732807418.471300 0.000000 0.000000\r\n-   VCL_use        boot\r\n-   ReqStart       127.0.0.1 50574 a0\r\n-   ReqMethod      GET\r\n-   ReqURL         /ecom/products/<obfuscated>\r\n-   ReqProtocol    HTTP/1.1\r\n-   ReqHeader      Host: localhost\r\n-   ReqHeader      Connection: keep-alive\r\n-   ReqHeader      Cache-Control: max-age=0\r\n-   ReqHeader      sec-ch-ua: \"Google Chrome\";v=\"131\", \"Chromium\";v=\"131\", \"Not_A Brand\";v=\"24\"\r\n-   ReqHeader      sec-ch-ua-mobile: ?0\r\n-   ReqHeader      sec-ch-ua-platform: \"macOS\"\r\n-   ReqHeader      Upgrade-Insecure-Requests: 1\r\n-   ReqHeader      User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36\r\n-   ReqHeader      Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7\r\n-   ReqHeader      Sec-Fetch-Site: none\r\n-   ReqHeader      Sec-Fetch-Mode: navigate\r\n-   ReqHeader      Sec-Fetch-User: ?1\r\n-   ReqHeader      Sec-Fetch-Dest: document\r\n-   ReqHeader      Accept-Encoding: gzip, deflate, br, zstd\r\n-   ReqHeader      Accept-Language: en-GB,en-US;q=0.9,en;q=0.8\r\n-   ReqHeader      Cookie: X-Has-Token-Session=false\r\n-   ReqHeader      X-Forwarded-For: 127.0.0.1\r\n-   ReqHeader      Via: 1.1 HO-LAR17GRWNW7J (Varnish/7.5)\r\n-   VCL_call       RECV\r\n-   ReqHeader      X-Iso-Timestamp: Thu, 28 Nov 2024 15:23:38 GMT\r\n-   ReqHeader      X-Esi-Request: false\r\n-   ReqHeader      X-Has-Token-Session: false\r\n-   VCL_Log        customerId:-1\r\n-   ReqUnset       Cookie: X-Has-Token-Session=false\r\n-   ReqHeader      Cookie: X-Has-Token-Session=false\r\n-   ReqHeader      X-Mfe-Type: page\r\n-   ReqHeader      X-Cookie-Consent-Given: false\r\n-   ReqHeader      X-Functional-Cookie-Accepted: false\r\n-   ReqHeader      X-Analytics-Cookie-Accepted: false\r\n-   ReqHeader      X-Advertising-Cookie-Accepted: false\r\n-   VCL_return     hash\r\n-   ReqUnset       Accept-Encoding: gzip, deflate, br, zstd\r\n-   ReqHeader      Accept-Encoding: gzip\r\n-   VCL_call       HASH\r\n-   VCL_return     lookup\r\n-   VCL_call       MISS\r\n-   ReqHeader      X-Cache: MISS\r\n-   VCL_return     fetch\r\n-   Link           bereq 3 fetch\r\n-   Timestamp      Fetch: 1732807418.481376 0.010076 0.010076\r\n-   RespProtocol   HTTP/1.1\r\n-   RespStatus     503\r\n-   RespReason     Backend fetch failed\r\n-   RespHeader     Date: Thu, 28 Nov 2024 15:23:38 GMT\r\n-   RespHeader     Server: Varnish\r\n-   RespHeader     X-Log-Priority: ERROR\r\n-   RespHeader     X-Varnish-Backend: browse\r\n-   RespHeader     Content-Type: text/html; charset=utf-8\r\n-   RespHeader     Retry-After: 5\r\n-   RespHeader     X-Varnish: 2\r\n-   RespHeader     Age: 0\r\n-   RespHeader     Via: 1.1 HO-LAR17GRWNW7J (Varnish/7.5)\r\n-   VCL_call       DELIVER\r\n-   RespHeader     X-Proxy-Cache: MISS\r\n-   RespHeader     X-Mfe-Type: page\r\n-   RespHeader     Set-Cookie: X-Has-Token-Session=false; path=/; max-age=3600; samesite=strict; secure\r\n-   VCL_return     deliver\r\n-   Timestamp      Process: 1732807418.481394 0.010094 0.000018\r\n-   Filters        \r\n-   RespHeader     Content-Length: 278\r\n-   RespHeader     Connection: keep-alive\r\n-   Timestamp      Resp: 1732807418.481611 0.010311 0.000216\r\n-   ReqAcct        796 0 796 429 278 707\r\n-   End            \r\n```\r\n\r\nRelevant parts of the VCL:\r\n\r\n```\r\nimport dynamic;\r\n\r\n...\r\n\r\nbackend default none;\r\n\r\n...\r\n\r\nsub vcl_init {\r\n   new browse = dynamic.director(ttl = 15m, connect_timeout = 5s, first_byte_timeout = 30s, between_bytes_timeout = 10s);\r\n   # Other backends...\r\n}\r\n\r\nsub vcl_recv {\r\n\r\n  ...\r\n\r\n  if (<request matching logic here>) {\r\n      set req.backend_hint = browse.backend(\"localhost\", \"9190\");\r\n  }\r\n\r\n  ...\r\n```\r\n\r\n(I can't share the whole VCL, but could share other specific bits as needed. I could also try to make a stripped-down VCL for minimal replication if helpful?)\r\n\r\nThe behaviour I was expecting was for the backends to be initialised at startup, but I might have assumed that incorrectly - on the fly is fine, as long as the first page load can be served correctly?\r\n\r\nThanks v much in advance and for all your work on this vmod, which should be really useful for us!","closed_by":{"login":"poshaughnessy","id":151207,"node_id":"MDQ6VXNlcjE1MTIwNw==","avatar_url":"https://avatars.githubusercontent.com/u/151207?v=4","gravatar_id":"","url":"https://api.github.com/users/poshaughnessy","html_url":"https://github.com/poshaughnessy","followers_url":"https://api.github.com/users/poshaughnessy/followers","following_url":"https://api.github.com/users/poshaughnessy/following{/other_user}","gists_url":"https://api.github.com/users/poshaughnessy/gists{/gist_id}","starred_url":"https://api.github.com/users/poshaughnessy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/poshaughnessy/subscriptions","organizations_url":"https://api.github.com/users/poshaughnessy/orgs","repos_url":"https://api.github.com/users/poshaughnessy/repos","events_url":"https://api.github.com/users/poshaughnessy/events{/privacy}","received_events_url":"https://api.github.com/users/poshaughnessy/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/129/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/129/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/130","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/130/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/130/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/130/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/130","id":2876199629,"node_id":"I_kwDOBBOOTM6rb1LN","number":130,"title":"Does HTTPS / SSL work out of the box?","user":{"login":"musabshak","id":20545913,"node_id":"MDQ6VXNlcjIwNTQ1OTEz","avatar_url":"https://avatars.githubusercontent.com/u/20545913?v=4","gravatar_id":"","url":"https://api.github.com/users/musabshak","html_url":"https://github.com/musabshak","followers_url":"https://api.github.com/users/musabshak/followers","following_url":"https://api.github.com/users/musabshak/following{/other_user}","gists_url":"https://api.github.com/users/musabshak/gists{/gist_id}","starred_url":"https://api.github.com/users/musabshak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/musabshak/subscriptions","organizations_url":"https://api.github.com/users/musabshak/orgs","repos_url":"https://api.github.com/users/musabshak/repos","events_url":"https://api.github.com/users/musabshak/events{/privacy}","received_events_url":"https://api.github.com/users/musabshak/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":443804427,"node_id":"MDU6TGFiZWw0NDM4MDQ0Mjc=","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/question","name":"question","color":"cc317c","default":true,"description":null}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2025-02-24T21:31:50Z","updated_at":"2025-03-05T16:20:22Z","closed_at":"2025-02-25T13:17:47Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"I am trying to use `libvmod-dynamic` to point Varnish to Google Cloud Storage's S3 REST API endpoint [1]: `storage.googleapis.com`. That is, trying to use Varnish as a caching forward-proxy to GCS. I need to use this / other similar \"dynamic backend\" VMOD because `storage.googleapis.com` resolves to multiple IPV4 + IPV6 IPs, and without using this VMOD, Varnish results in an error of the form:\n\n```\nBackend host \"url2.external-backend.com\": resolves to multiple IPv4 addresses.\nOnly one address is allowed.\nPlease specify which exact address you want to use, we found these:\n\n```\n\nWhen I configure a dynamic director with port \"80\", Varnish is able to connect to GCS just fine:\n\n```\n      new d = dynamic.director(\n        port = \"80\",\n        whitelist = ipv4_only,\n        connect_timeout = 5s,\n        first_byte_timeout = 10s,\n        between_bytes_timeout = 10s,\n        ttl = 1s\n      );\n\n      set req.backend_hint = d.backend(host = \"storage.googleapis.com\");\n```\n\nBut when I switch to using \"443\" (HTTPS), Varnish is never able to connect to the GCS backend and returns errors:\n```\n-   BackendOpen    33 d(142.251.214.155:443) 142.251.214.155 443 10.0.26.45 50656 connect\n-   Timestamp      Bereq: 1740431027.316045 0.002099 0.000087\n-   FetchError     HTC eof (Unexpected end of input)\n-   BackendClose   33 d(142.251.214.155:443) close RX_BAD\n-   Timestamp      Beresp: 1740431027.318051 0.004105 0.002006\n-   Timestamp      Error: 1740431027.318055 0.004109 0.000003\n-   BerespProtocol HTTP/1.1\n-   BerespStatus   503\n-   BerespReason   Backend fetch failed\n-   BerespHeader   Date: Mon, 24 Feb 2025 21:03:47 GMT\n-   BerespHeader   Server: Varnish\n-   VCL_call       BACKEND_ERROR\n```\n\nThe motivation obviously is to use encrypted HTTPS for sending traffic over the public internet to/from GCS. \n\nDiscussion in https://github.com/nigoroll/libvmod-dynamic/pull/76 feels relevant. Any quick thoughts / pointers much appreciated. \n\nAnother similar \"dynamic backend\" VMOD (`reqwest` [2]) claims explicit support for HTTPS but I didn't see a similar claim in the `libvmod-dynamic` docs so I thought I'd quick check. Thank you!\n\n[1] https://cloud.google.com/storage/docs/interoperability\n[2] https://github.com/gquintard/vmod_reqwest\n\nimage: varnish:7.6.1","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/130/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/130/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/131","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/131/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/131/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/131/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/131","id":2900544129,"node_id":"I_kwDOBBOOTM6s4sqB","number":131,"title":"Big quit due to deadlock when destroying dynamic domains","user":{"login":"saaguero","id":2459621,"node_id":"MDQ6VXNlcjI0NTk2MjE=","avatar_url":"https://avatars.githubusercontent.com/u/2459621?v=4","gravatar_id":"","url":"https://api.github.com/users/saaguero","html_url":"https://github.com/saaguero","followers_url":"https://api.github.com/users/saaguero/followers","following_url":"https://api.github.com/users/saaguero/following{/other_user}","gists_url":"https://api.github.com/users/saaguero/gists{/gist_id}","starred_url":"https://api.github.com/users/saaguero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/saaguero/subscriptions","organizations_url":"https://api.github.com/users/saaguero/orgs","repos_url":"https://api.github.com/users/saaguero/repos","events_url":"https://api.github.com/users/saaguero/events{/privacy}","received_events_url":"https://api.github.com/users/saaguero/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":2228316027,"node_id":"MDU6TGFiZWwyMjI4MzE2MDI3","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/needs%20varnish-cache","name":"needs varnish-cache","color":"006b75","default":false,"description":"needs work in varnish-cache"}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2025-03-06T14:17:41Z","updated_at":"2025-12-07T16:04:48Z","closed_at":"2025-12-07T16:04:48Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"On normal operations, without much traffic, I have seen the following panic:\n\nThe way I used it is like the following (with haproxy for ssl)\n\n```vcl\nbackend sslon {\n  .path = \"/run/sslon\";\n}\n\nsub vcl_init {\n    new director = dynamic.director(\n        ttl = 10s,\n        via = sslon,\n        port = 443);\n}\n\nsub vcl_backend_fetch {\n    set bereq.backend = director.backend(regsub(bereq.http.baseUrl, \"^(https://)?(.*?)/?$\", \"\\2\"));\n    return(fetch);\n}\n```\n\n```\nPanic at: Thu, 06 Mar 2025 04:55:00 GMT\nWrong turn at cache/cache_main.c:362:\nIt's time for the big quit\nversion = varnish-7.6.1 revision c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, vrt api = 20.1\nident = Linux,6.8.0-1018-aws,x86_64,-jlinux,-smalloc,-sdefault,-hcritbit,epoll\nnow = 1766693.617585 (mono), 1741236889.395595 (real)\nBacktrace:\n  0x5b09f7de0ee4: /usr/sbin/varnishd(VBT_format+0x74) [0x5b09f7de0ee4]\n  0x5b09f7d5c440: /usr/sbin/varnishd(+0x60440) [0x5b09f7d5c440]\n  0x5b09f7de047c: /usr/sbin/varnishd(VAS_Fail+0x4c) [0x5b09f7de047c]\n  0x5b09f7d568f5: /usr/sbin/varnishd(+0x5a8f5) [0x5b09f7d568f5]\n  0x7165f9245330: /lib/x86_64-linux-gnu/libc.so.6(+0x45330) [0x7165f9245330]\n  0x7165f9298d6f: /lib/x86_64-linux-gnu/libc.so.6(+0x98d6f) [0x7165f9298d6f]\n  0x7165f929e7a3: /lib/x86_64-linux-gnu/libc.so.6(+0x9e7a3) [0x7165f929e7a3]\n  0x7165ddc5373f: ./vmod_cache/_vmod_dynamic.d0c0174a306f0e14bae5c6aeac83d361e4a831b344efeef7fb0d42bc921cd477(+0x473f) [0x7165ddc5373f]\n  0x5b09f7d6c5a4: /usr/sbin/varnishd(+0x705a4) [0x5b09f7d6c5a4]\n  0x5b09f7d6da0e: /usr/sbin/varnishd(+0x71a0e) [0x5b09f7d6da0e]\n  0x5b09f7d6e6b5: /usr/sbin/varnishd(+0x726b5) [0x5b09f7d6e6b5]\n  0x5b09f7de2dcb: /usr/sbin/varnishd(+0xe6dcb) [0x5b09f7de2dcb]\n  0x5b09f7de330b: /usr/sbin/varnishd(VCLS_Poll+0x32b) [0x5b09f7de330b]\n  0x5b09f7d37d74: /usr/sbin/varnishd(CLI_Run+0x74) [0x5b09f7d37d74]\n  0x5b09f7d570aa: /usr/sbin/varnishd(child_main+0x21a) [0x5b09f7d570aa]\n  0x5b09f7da2b15: /usr/sbin/varnishd(+0xa6b15) [0x5b09f7da2b15]\n  0x5b09f7da3d5f: /usr/sbin/varnishd(MCH_Start_Child+0xf) [0x5b09f7da3d5f]\n  0x5b09f7d29b02: /usr/sbin/varnishd(main+0x26b2) [0x5b09f7d29b02]\n  0x7165f922a1ca: /lib/x86_64-linux-gnu/libc.so.6(+0x2a1ca) [0x7165f922a1ca]\n  0x7165f922a28b: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x8b) [0x7165f922a28b]\nargv = {\n  [0] = \\\"/usr/sbin/varnishd\\\",\n  [1] = \\\"-a\\\",\n  [2] = \\\":80\\\",\n  [3] = \\\"-a\\\",\n  [4] = \\\"localhost:8443,proxy\\\",\n  [5] = \\\"-T\\\",\n  [6] = \\\"localhost:6082\\\",\n  [7] = \\\"-f\\\",\n  [8] = \\\"/etc/varnish/default.vcl\\\",\n  [9] = \\\"-s\\\",\n  [10] = \\\"malloc,7GB\\\",\n  [11] = \\\"-p\\\",\n  [12] = \\\"vsl_buffer=32KB\\\",\n  [13] = \\\"-p\\\",\n  [14] = \\\"vsl_reclen=16372b\\\",\n  [15] = \\\"-p\\\",\n  [16] = \\\"vsl_space=256MB\\\",\n  [17] = \\\"-p\\\",\n  [18] = \\\"workspace_client=4MB\\\",\n  [19] = \\\"-p\\\",\n  [20] = \\\"workspace_backend=1MB\\\",\n  [21] = \\\"-p\\\",\n  [22] = \\\"transit_buffer=1M\\\",\n  [23] = \\\"-p\\\",\n  [24] = \\\"timeout_idle=61\\\",\n  [25] = \\\"-p\\\",\n  [26] = \\\"thread_pool_min=1000\\\",\n  [27] = \\\"-p\\\",\n  [28] = \\\"thread_pool_max=2000\\\",\n  [29] = \\\"-p\\\",\n  [30] = \\\"feature=none,+vcl_req_reset\\\",\n}\npthread.self = 0x7165f99705c0\npthread.name = (cache-main)\npthread.attr = {\n  guard = 0,\n  stack_bottom = 0x7ffdd4ec8000,\n  stack_top = 0x7ffdd56c6000,\n  stack_size = 8380416,\n}\nthr.req = NULL\nthr.busyobj = NULL\nthr.worker = NULL\nvmods = {\n  uuid = {0x7165f8ad7230, Varnish 7.6.1 c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, 20.1},\n  file = {0x7165f8ad72a0, Varnish 7.6.1 c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, 20.1},\n  querystring = {0x7165f8ad7310, Varnish 7.6.1 c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, 20.1},\n  std = {0x7165f8ad7380, Varnish 7.6.1 c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, 0.0},\n  str = {0x7165f8ad7460, Varnish 7.6.1 c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, 0.0},\n  dynamic = {0x7165f8ad7540, Varnish 7.6.1 c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, 20.1},\n  re = {0x7165f8ad75b0, Varnish 7.6.1 c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, 20.1},\n  frozen = {0x7165f8ad7620, Varnish 7.6.1 c3d5882003eb87e5e93dc09fb9513ca96db3ca3c, 0.0},\n},\npools = {\n  pool = 0x7165e5e00000 {\n    nidle = 28,\n    nthr = 2000,\n    lqueue = 1\n  },\n  pool = 0x7165e5e00140 {\n    nidle = 28,\n    nthr = 2000,\n    lqueue = 1\n  },\n},\n```","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/131/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/131/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/132","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/132/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/132/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/132/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/132","id":2932136844,"node_id":"I_kwDOBBOOTM6uxNuM","number":132,"title":"Supporting dual stack networking (prefer IPv6)","user":{"login":"thomasklinger1234","id":39558817,"node_id":"MDQ6VXNlcjM5NTU4ODE3","avatar_url":"https://avatars.githubusercontent.com/u/39558817?v=4","gravatar_id":"","url":"https://api.github.com/users/thomasklinger1234","html_url":"https://github.com/thomasklinger1234","followers_url":"https://api.github.com/users/thomasklinger1234/followers","following_url":"https://api.github.com/users/thomasklinger1234/following{/other_user}","gists_url":"https://api.github.com/users/thomasklinger1234/gists{/gist_id}","starred_url":"https://api.github.com/users/thomasklinger1234/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thomasklinger1234/subscriptions","organizations_url":"https://api.github.com/users/thomasklinger1234/orgs","repos_url":"https://api.github.com/users/thomasklinger1234/repos","events_url":"https://api.github.com/users/thomasklinger1234/events{/privacy}","received_events_url":"https://api.github.com/users/thomasklinger1234/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":443804424,"node_id":"MDU6TGFiZWw0NDM4MDQ0MjQ=","url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/labels/enhancement","name":"enhancement","color":"84b6eb","default":true,"description":null}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2025-03-19T15:02:35Z","updated_at":"2026-01-08T13:31:39Z","closed_at":null,"author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"## Summary\n\nAs a developer, I want to configure `dynamic` VMOD to support dualstack when resolving backend endpoint IPs, so I can support dual stack architectures. \n\nIs it possible to \"prefer\" IPv6 somehow before libvmod-dynamic considers returning IPv4 addresses when calling `xdynamic.backend()` without hacking around with operating system settings, `/etc/gai.conf` or network architecture. \n\nI have looked into [this](https://github.com/nigoroll/libvmod-dynamic/blob/master/src/tests/resolver/test01.vtc) VTC test but after some tests it seems that the `acl` will rule out IPv4 addresses completely from DNS resolution but I would like to support a softer fallback to ease migration and integration for our backend teams. \n\n## Background\n\nOur network architecture mandates the usage of [dual stack](https://www.juniper.net/documentation/us/en/software/junos/is-is/topics/concept/ipv6-dual-stack-understanding.html) networking, i.e. support for both IPv4 and IPv6 addresses on the same DNS name (not record). Currently, the setup is `HAProxy -> Varnish backend -> HAproxy backend -> resolve-prefer ipv6 -> origin`, so a very standard Varnish architecture but we want to switch to using `libvmod-dynamic` instead. \n\nFor example, if I want to proxy `example.com` with Varnish and libvmod-dynamic, it resolves to the following IPs\n\n```\n$ dig +short A example.com\n23.215.0.136\n23.215.0.138\n96.7.128.175\n96.7.128.198\n23.192.228.80\n23.192.228.8\n\n$ dig +short AAAA example.com\n2600:1408:ec00:36::1736:7f24\n2600:1408:ec00:36::1736:7f31\n2600:1406:3a00:21::173e:2e65\n2600:1406:3a00:21::173e:2e66\n2600:1406:bc00:53::b81e:94c8\n2600:1406:bc00:53::b81e:94ce\n```\n\nMy use case involves the following scenario:\n- If `example.com` supports IPv6 via AAAA record, those IPs should be preferred\n- If `example.com` does not support IPv6, fallback to IPv4\n\nThis is similar to HAProxy's [resolve-prefer](https://www.haproxy.com/documentation/haproxy-configuration-manual/latest/#5.2-resolve-prefer) option. \n\n## Environment\n\n- Varnish with `libvmod-dynamic` from `varnish:7.6.1` docker image\n- HAProxy configured via `sslon` to onload TLS (otherwise we would simply use the HAProxy setting)","closed_by":null,"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/132/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/132/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/133","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/133/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/133/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/133/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/133","id":2988056403,"node_id":"PR_kwDOBBOOTM6SOhdI","number":133,"title":"Migrate to VCDK","user":{"login":"cartoush","id":16189883,"node_id":"MDQ6VXNlcjE2MTg5ODgz","avatar_url":"https://avatars.githubusercontent.com/u/16189883?v=4","gravatar_id":"","url":"https://api.github.com/users/cartoush","html_url":"https://github.com/cartoush","followers_url":"https://api.github.com/users/cartoush/followers","following_url":"https://api.github.com/users/cartoush/following{/other_user}","gists_url":"https://api.github.com/users/cartoush/gists{/gist_id}","starred_url":"https://api.github.com/users/cartoush/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cartoush/subscriptions","organizations_url":"https://api.github.com/users/cartoush/orgs","repos_url":"https://api.github.com/users/cartoush/repos","events_url":"https://api.github.com/users/cartoush/events{/privacy}","received_events_url":"https://api.github.com/users/cartoush/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2025-04-11T09:11:00Z","updated_at":"2025-07-01T13:35:34Z","closed_at":"2025-07-01T13:35:33Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/133","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/133","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/133.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/133.patch","merged_at":"2025-07-01T13:35:33Z"},"body":"Refactoring of this VMOD so that it corresponds\r\nto the schema described in https://git.sr.ht/~dridi/vcdk","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/133/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/133/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/134","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/134/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/134/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/134/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/134","id":3044768425,"node_id":"I_kwDOBBOOTM61e3qp","number":134,"title":"Varnish 7.7","user":{"login":"ronald-sz","id":97725423,"node_id":"U_kgDOBdMr7w","avatar_url":"https://avatars.githubusercontent.com/u/97725423?v=4","gravatar_id":"","url":"https://api.github.com/users/ronald-sz","html_url":"https://github.com/ronald-sz","followers_url":"https://api.github.com/users/ronald-sz/followers","following_url":"https://api.github.com/users/ronald-sz/following{/other_user}","gists_url":"https://api.github.com/users/ronald-sz/gists{/gist_id}","starred_url":"https://api.github.com/users/ronald-sz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronald-sz/subscriptions","organizations_url":"https://api.github.com/users/ronald-sz/orgs","repos_url":"https://api.github.com/users/ronald-sz/repos","events_url":"https://api.github.com/users/ronald-sz/events{/privacy}","received_events_url":"https://api.github.com/users/ronald-sz/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2025-05-07T05:51:40Z","updated_at":"2025-05-22T13:44:17Z","closed_at":"2025-05-21T14:58:40Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi Nils, \n\nis libvmod-dynamic ready for Varnish 7.7? If so, could we get a branch. \n\nThank you,\nRonald","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/134/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/134/timeline","performed_via_github_app":null,"state_reason":"completed"},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/135","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/135/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/135/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/135/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/135","id":3424025919,"node_id":"PR_kwDOBBOOTM6o9NQX","number":135,"title":"Revert \"Handle src/vmod_vcs_version.txt\"","user":{"login":"gquintard","id":3776553,"node_id":"MDQ6VXNlcjM3NzY1NTM=","avatar_url":"https://avatars.githubusercontent.com/u/3776553?v=4","gravatar_id":"","url":"https://api.github.com/users/gquintard","html_url":"https://github.com/gquintard","followers_url":"https://api.github.com/users/gquintard/followers","following_url":"https://api.github.com/users/gquintard/following{/other_user}","gists_url":"https://api.github.com/users/gquintard/gists{/gist_id}","starred_url":"https://api.github.com/users/gquintard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gquintard/subscriptions","organizations_url":"https://api.github.com/users/gquintard/orgs","repos_url":"https://api.github.com/users/gquintard/repos","events_url":"https://api.github.com/users/gquintard/events{/privacy}","received_events_url":"https://api.github.com/users/gquintard/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2025-09-16T23:23:25Z","updated_at":"2025-12-07T18:38:43Z","closed_at":"2025-12-07T15:53:32Z","author_association":"CONTRIBUTOR","active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/pulls/135","html_url":"https://github.com/nigoroll/libvmod-dynamic/pull/135","diff_url":"https://github.com/nigoroll/libvmod-dynamic/pull/135.diff","patch_url":"https://github.com/nigoroll/libvmod-dynamic/pull/135.patch","merged_at":null},"body":"This reverts commit 2b18abec24e8b51b0b316fa028ee01cad73fc533.\r\n\r\nOn 8.0, I'm getting:\r\n\r\n```\r\n/usr/bin/install -c -m 644 vmod_dynamic.vcc ./vmod_vcs_version.txt vtc/admin_health.vtc vtc/layer.vtc vtc/layer_probe.vtc vtc/layer_reload.vtc vtc/r00107.vtc vtc/stale_obj.vtc vtc/test01.vtc vtc/test02.vtc vtc/test03.vtc vtc/test04.vtc vtc/test05.vtc vtc/test06.vtc vtc/test07.vtc vtc/test08.vtc vtc/test09.vtc vtc/test10.vtc vtc/test11.vtc vtc/test12.vtc vtc/test13.vtc vtc/test14.vtc vtc/via.vtc vtc/via_uds.vtc vtc/nogetdns/resolver_init_error.vtc '/usr/share/doc/vmod-dynamic'\r\n/bin/mkdir -p '/usr/lib/varnish/vmods'\r\ninstall: can't stat './vmod_vcs_version.txt': No such file or directory\r\n```\r\n\r\n`vmod_vcs_version.txt` doesn't seem to be generated anymore, and reverting the original commit seems to do the job.","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/135/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/135/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/136","repository_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic","labels_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/136/labels{/name}","comments_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/136/comments","events_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/136/events","html_url":"https://github.com/nigoroll/libvmod-dynamic/issues/136","id":3652238523,"node_id":"I_kwDOBBOOTM7ZsLy7","number":136,"title":"Support for Varnish 8.0.0","user":{"login":"ronald-sz","id":97725423,"node_id":"U_kgDOBdMr7w","avatar_url":"https://avatars.githubusercontent.com/u/97725423?v=4","gravatar_id":"","url":"https://api.github.com/users/ronald-sz","html_url":"https://github.com/ronald-sz","followers_url":"https://api.github.com/users/ronald-sz/followers","following_url":"https://api.github.com/users/ronald-sz/following{/other_user}","gists_url":"https://api.github.com/users/ronald-sz/gists{/gist_id}","starred_url":"https://api.github.com/users/ronald-sz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ronald-sz/subscriptions","organizations_url":"https://api.github.com/users/ronald-sz/orgs","repos_url":"https://api.github.com/users/ronald-sz/repos","events_url":"https://api.github.com/users/ronald-sz/events{/privacy}","received_events_url":"https://api.github.com/users/ronald-sz/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2025-11-21T15:59:26Z","updated_at":"2025-12-10T15:15:49Z","closed_at":"2025-12-07T16:33:54Z","author_association":"NONE","active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Hi Nils, \n\nis vmod_dynamic ready for using with Varnish 8.0.0? Could we get a branch for this?\n\nThank you!","closed_by":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/136/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/nigoroll/libvmod-dynamic/issues/136/timeline","performed_via_github_app":null,"state_reason":"completed"}]