{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/hhvm/issues/7345","repository_url":"https://api.github.com/repos/facebook/hhvm","labels_url":"https://api.github.com/repos/facebook/hhvm/issues/7345/labels{/name}","comments_url":"https://api.github.com/repos/facebook/hhvm/issues/7345/comments","events_url":"https://api.github.com/repos/facebook/hhvm/issues/7345/events","html_url":"https://github.com/facebook/hhvm/issues/7345","id":176710224,"number":7345,"title":"HHVM Cyclical Garbage Collecting is broken","user":{"login":"RyanGordon","id":535118,"avatar_url":"https://avatars.githubusercontent.com/u/535118?v=3","gravatar_id":"","url":"https://api.github.com/users/RyanGordon","html_url":"https://github.com/RyanGordon","followers_url":"https://api.github.com/users/RyanGordon/followers","following_url":"https://api.github.com/users/RyanGordon/following{/other_user}","gists_url":"https://api.github.com/users/RyanGordon/gists{/gist_id}","starred_url":"https://api.github.com/users/RyanGordon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RyanGordon/subscriptions","organizations_url":"https://api.github.com/users/RyanGordon/orgs","repos_url":"https://api.github.com/users/RyanGordon/repos","events_url":"https://api.github.com/users/RyanGordon/events{/privacy}","received_events_url":"https://api.github.com/users/RyanGordon/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"edwinsmith","id":1271766,"avatar_url":"https://avatars.githubusercontent.com/u/1271766?v=3","gravatar_id":"","url":"https://api.github.com/users/edwinsmith","html_url":"https://github.com/edwinsmith","followers_url":"https://api.github.com/users/edwinsmith/followers","following_url":"https://api.github.com/users/edwinsmith/following{/other_user}","gists_url":"https://api.github.com/users/edwinsmith/gists{/gist_id}","starred_url":"https://api.github.com/users/edwinsmith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edwinsmith/subscriptions","organizations_url":"https://api.github.com/users/edwinsmith/orgs","repos_url":"https://api.github.com/users/edwinsmith/repos","events_url":"https://api.github.com/users/edwinsmith/events{/privacy}","received_events_url":"https://api.github.com/users/edwinsmith/received_events","type":"User","site_admin":false},"assignees":[{"login":"edwinsmith","id":1271766,"avatar_url":"https://avatars.githubusercontent.com/u/1271766?v=3","gravatar_id":"","url":"https://api.github.com/users/edwinsmith","html_url":"https://github.com/edwinsmith","followers_url":"https://api.github.com/users/edwinsmith/followers","following_url":"https://api.github.com/users/edwinsmith/following{/other_user}","gists_url":"https://api.github.com/users/edwinsmith/gists{/gist_id}","starred_url":"https://api.github.com/users/edwinsmith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edwinsmith/subscriptions","organizations_url":"https://api.github.com/users/edwinsmith/orgs","repos_url":"https://api.github.com/users/edwinsmith/repos","events_url":"https://api.github.com/users/edwinsmith/events{/privacy}","received_events_url":"https://api.github.com/users/edwinsmith/received_events","type":"User","site_admin":false}],"milestone":null,"comments":10,"created_at":"2016-09-13T18:08:43Z","updated_at":"2016-09-17T01:18:31Z","closed_at":null,"body":"### HHVM Version\r\n\r\n```\r\nhhvm --version\r\nHipHop VM 3.14.5 (rel)\r\nCompiler: tags/HHVM-3.14.5-0-gc6bf714e6468213eed377527b431e9cd4cec1432\r\nRepo schema: 9ab3fe4281c731189b558d921eb7317b0eb2b2e6\r\n```\r\n\r\n```\r\nphp --version\r\nPHP 5.5.32 (cli) (built: Feb  4 2016 23:20:47) \r\nCopyright (c) 1997-2015 The PHP Group\r\nZend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies\r\n    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies\r\n```\r\n\r\n### Standalone code, or other way to reproduce the problem\r\n\r\nTwo test scripts:\r\n\r\n```\r\n# cyclical_test.php\r\n<?php\r\n\r\nini_set('memory_limit', '10G');\r\n\r\nclass Left {\r\n   public $right;\r\n}\r\n\r\nclass Right {\r\n   public $left;\r\n}\r\n\r\n$iter = 0;\r\nwhile (true) {\r\n   $left = new Left();\r\n   $right = new Right();\r\n   $left->right = $right;\r\n   $right->left = $left;\r\n   $iter++;\r\n   if ($iter % 1000000 === 0) {\r\n      $formattedIter = number_format($iter, 0);\r\n      $memoryUsage = memory_get_usage() / (1024 * 1024);\r\n      echo \"Survived {$formattedIter} iterations: {$memoryUsage}MB used\\n\";\r\n   }\r\n}\r\n\r\n?>\r\n```\r\n\r\n```\r\n# non_cyclical_test.php\r\n<?php\r\n\r\nini_set('memory_limit', '10G');\r\n\r\nclass One {\r\n   public $one = 1;\r\n}\r\n\r\n$iter = 0;\r\nwhile (true) {\r\n   $one = new One();\r\n   $iter++;\r\n   if ($iter % 1000000 === 0) {\r\n      $formattedIter = number_format($iter, 0);\r\n      $memoryUsage = memory_get_usage() / (1024 * 1024);\r\n      echo \"Survived {$formattedIter} iterations: {$memoryUsage}MB used\\n\";\r\n   }\r\n}\r\n\r\n?>\r\n```\r\n\r\n### Expected result\r\n\r\nWe expect memory usage to stay low and not explode:\r\n\r\n```\r\n$ /usr/bin/php cyclical_test.php\r\nSurvived 1,000,000 iterations: 1.1863784790039MB used\r\nSurvived 2,000,000 iterations: 1.2109756469727MB used\r\nSurvived 3,000,000 iterations: 1.2353897094727MB used\r\nSurvived 4,000,000 iterations: 1.2598037719727MB used\r\nSurvived 5,000,000 iterations: 1.2842178344727MB used\r\nSurvived 6,000,000 iterations: 1.3086318969727MB used\r\nSurvived 7,000,000 iterations: 1.3330459594727MB used\r\nSurvived 8,000,000 iterations: 1.3574752807617MB used\r\nSurvived 9,000,000 iterations: 1.3818740844727MB used\r\nSurvived 10,000,000 iterations: 1.4062881469727MB used\r\nSurvived 11,000,000 iterations: 1.4307022094727MB used\r\nSurvived 12,000,000 iterations: 1.4551467895508MB used\r\nSurvived 13,000,000 iterations: 1.4796981811523MB used\r\nSurvived 14,000,000 iterations: 1.5053634643555MB used\r\nSurvived 15,000,000 iterations: 1.5302047729492MB used\r\nSurvived 16,000,000 iterations: 1.5549240112305MB used\r\nSurvived 17,000,000 iterations: 1.5798873901367MB used\r\nSurvived 18,000,000 iterations: 1.6045608520508MB used\r\nSurvived 19,000,000 iterations: 1.6292953491211MB used\r\nSurvived 20,000,000 iterations: 1.653923034668MB used\r\nSurvived 21,000,000 iterations: 1.6791610717773MB used\r\nSurvived 22,000,000 iterations: 1.7042007446289MB used\r\nSurvived 23,000,000 iterations: 1.7290725708008MB used\r\nSurvived 24,000,000 iterations: 1.7536544799805MB used\r\nSurvived 25,000,000 iterations: 1.7786636352539MB used\r\nSurvived 26,000,000 iterations: 1.8034439086914MB used\r\nSurvived 27,000,000 iterations: 1.8284072875977MB used\r\nSurvived 28,000,000 iterations: 1.8535232543945MB used\r\nSurvived 29,000,000 iterations: 1.8784408569336MB used\r\nSurvived 30,000,000 iterations: 1.9027481079102MB used\r\nSurvived 31,000,000 iterations: 1.927360534668MB used\r\nSurvived 32,000,000 iterations: 1.9524154663086MB used\r\nSurvived 33,000,000 iterations: 1.9762802124023MB used\r\nSurvived 34,000,000 iterations: 2.0016708374023MB used\r\nSurvived 35,000,000 iterations: 2.025749206543MB used\r\nSurvived 36,000,000 iterations: 2.0504379272461MB used\r\nSurvived 37,000,000 iterations: 2.0751419067383MB used\r\nSurvived 38,000,000 iterations: 2.0998764038086MB used\r\nSurvived 39,000,000 iterations: 2.1247634887695MB used\r\nSurvived 40,000,000 iterations: 2.1489181518555MB used\r\nSurvived 41,000,000 iterations: 2.1744918823242MB used\r\nSurvived 42,000,000 iterations: 2.199333190918MB used\r\nSurvived 43,000,000 iterations: 2.2241287231445MB used\r\nSurvived 44,000,000 iterations: 2.2484664916992MB used\r\nSurvived 45,000,000 iterations: 2.2726669311523MB used\r\nSurvived 46,000,000 iterations: 2.297233581543MB used\r\nSurvived 47,000,000 iterations: 2.322151184082MB used\r\nSurvived 48,000,000 iterations: 2.346565246582MB used\r\nSurvived 49,000,000 iterations: 2.3715744018555MB used\r\nSurvived 50,000,000 iterations: 1.1623916625977MB used\r\nSurvived 51,000,000 iterations: 1.1868057250977MB used\r\nSurvived 52,000,000 iterations: 1.2114181518555MB used\r\nSurvived 53,000,000 iterations: 1.2367172241211MB used\r\nSurvived 54,000,000 iterations: 1.2617568969727MB used\r\nSurvived 55,000,000 iterations: 1.286491394043MB used\r\nSurvived 56,000,000 iterations: 1.3120040893555MB used\r\nSurvived 57,000,000 iterations: 1.3371047973633MB used\r\nSurvived 58,000,000 iterations: 1.3626480102539MB used\r\nSurvived 59,000,000 iterations: 1.3877182006836MB used\r\nSurvived 60,000,000 iterations: 1.4123916625977MB used\r\nSurvived 61,000,000 iterations: 1.4376449584961MB used\r\nSurvived 62,000,000 iterations: 1.4625015258789MB used\r\nSurvived 63,000,000 iterations: 1.4873580932617MB used\r\nSurvived 64,000,000 iterations: 1.5118179321289MB used\r\nSurvived 65,000,000 iterations: 1.5366897583008MB used\r\nSurvived 66,000,000 iterations: 1.5615768432617MB used\r\nSurvived 67,000,000 iterations: 1.5861434936523MB used\r\nSurvived 68,000,000 iterations: 1.6105117797852MB used\r\nSurvived 69,000,000 iterations: 1.6356430053711MB used\r\nSurvived 70,000,000 iterations: 1.6600570678711MB used\r\nSurvived 71,000,000 iterations: 1.6847763061523MB used\r\n^C\r\n```\r\n\r\n```\r\n$ qhhvm non_cyclical_test.php\r\nSurvived 1,000,000 iterations: 2MB used\r\nSurvived 2,000,000 iterations: 2MB used\r\nSurvived 3,000,000 iterations: 2MB used\r\nSurvived 4,000,000 iterations: 2MB used\r\nSurvived 5,000,000 iterations: 2MB used\r\nSurvived 6,000,000 iterations: 2MB used\r\nSurvived 7,000,000 iterations: 2MB used\r\nSurvived 8,000,000 iterations: 2MB used\r\nSurvived 9,000,000 iterations: 2MB used\r\nSurvived 10,000,000 iterations: 2MB used\r\nSurvived 11,000,000 iterations: 2MB used\r\nSurvived 12,000,000 iterations: 2MB used\r\nSurvived 13,000,000 iterations: 2MB used\r\nSurvived 14,000,000 iterations: 2MB used\r\nSurvived 15,000,000 iterations: 2MB used\r\nSurvived 16,000,000 iterations: 2MB used\r\nSurvived 17,000,000 iterations: 2MB used\r\nSurvived 18,000,000 iterations: 2MB used\r\nSurvived 19,000,000 iterations: 2MB used\r\nSurvived 20,000,000 iterations: 2MB used\r\nSurvived 21,000,000 iterations: 2MB used\r\nSurvived 22,000,000 iterations: 2MB used\r\nSurvived 23,000,000 iterations: 2MB used\r\nSurvived 24,000,000 iterations: 2MB used\r\nSurvived 25,000,000 iterations: 2MB used\r\nSurvived 26,000,000 iterations: 2MB used\r\nSurvived 27,000,000 iterations: 2MB used\r\nSurvived 28,000,000 iterations: 2MB used\r\nSurvived 29,000,000 iterations: 2MB used\r\nSurvived 30,000,000 iterations: 2MB used\r\nSurvived 31,000,000 iterations: 2MB used\r\nSurvived 32,000,000 iterations: 2MB used\r\nSurvived 33,000,000 iterations: 2MB used\r\nSurvived 34,000,000 iterations: 2MB used\r\nSurvived 35,000,000 iterations: 2MB used\r\nSurvived 36,000,000 iterations: 2MB used\r\nSurvived 37,000,000 iterations: 2MB used\r\nSurvived 38,000,000 iterations: 2MB used\r\nSurvived 39,000,000 iterations: 2MB used\r\nSurvived 40,000,000 iterations: 2MB used\r\nSurvived 41,000,000 iterations: 2MB used\r\nSurvived 42,000,000 iterations: 2MB used\r\nSurvived 43,000,000 iterations: 2MB used\r\nSurvived 44,000,000 iterations: 2MB used\r\nSurvived 45,000,000 iterations: 2MB used\r\nSurvived 46,000,000 iterations: 2MB used\r\nSurvived 47,000,000 iterations: 2MB used\r\nSurvived 48,000,000 iterations: 2MB used\r\nSurvived 49,000,000 iterations: 2MB used\r\nSurvived 50,000,000 iterations: 2MB used\r\nSurvived 51,000,000 iterations: 2MB used\r\nSurvived 52,000,000 iterations: 2MB used\r\nSurvived 53,000,000 iterations: 2MB used\r\nSurvived 54,000,000 iterations: 2MB used\r\nSurvived 55,000,000 iterations: 2MB used\r\nSurvived 56,000,000 iterations: 2MB used\r\nSurvived 57,000,000 iterations: 2MB used\r\nSurvived 58,000,000 iterations: 2MB used\r\nSurvived 59,000,000 iterations: 2MB used\r\nSurvived 60,000,000 iterations: 2MB used\r\nSurvived 61,000,000 iterations: 2MB used\r\nSurvived 62,000,000 iterations: 2MB used\r\nSurvived 63,000,000 iterations: 2MB used\r\nSurvived 64,000,000 iterations: 2MB used\r\nSurvived 65,000,000 iterations: 2MB used\r\nSurvived 66,000,000 iterations: 2MB used\r\nSurvived 67,000,000 iterations: 2MB used\r\nSurvived 68,000,000 iterations: 2MB used\r\nSurvived 69,000,000 iterations: 2MB used\r\nSurvived 70,000,000 iterations: 2MB used\r\nSurvived 71,000,000 iterations: 2MB used\r\nSurvived 72,000,000 iterations: 2MB used\r\nSurvived 73,000,000 iterations: 2MB used\r\nSurvived 74,000,000 iterations: 2MB used\r\nSurvived 75,000,000 iterations: 2MB used\r\nSurvived 76,000,000 iterations: 2MB used\r\nSurvived 77,000,000 iterations: 2MB used\r\nSurvived 78,000,000 iterations: 2MB used\r\nSurvived 79,000,000 iterations: 2MB used\r\nSurvived 80,000,000 iterations: 2MB used\r\nSurvived 81,000,000 iterations: 2MB used\r\nSurvived 82,000,000 iterations: 2MB used\r\nSurvived 83,000,000 iterations: 2MB used\r\nSurvived 84,000,000 iterations: 2MB used\r\nSurvived 85,000,000 iterations: 2MB used\r\nSurvived 86,000,000 iterations: 2MB used\r\nSurvived 87,000,000 iterations: 2MB used\r\nSurvived 88,000,000 iterations: 2MB used\r\nSurvived 89,000,000 iterations: 2MB used\r\nSurvived 90,000,000 iterations: 2MB used\r\nSurvived 91,000,000 iterations: 2MB used\r\nSurvived 92,000,000 iterations: 2MB used\r\nSurvived 93,000,000 iterations: 2MB used\r\nSurvived 94,000,000 iterations: 2MB used\r\nSurvived 95,000,000 iterations: 2MB used\r\n^C\r\n```\r\n\r\n```\r\n$ /usr/bin/php non_cyclical_test.php\r\nSurvived 1,000,000 iterations: 0.22219848632812MB used\r\nSurvived 2,000,000 iterations: 0.22237396240234MB used\r\nSurvived 3,000,000 iterations: 0.22237396240234MB used\r\nSurvived 4,000,000 iterations: 0.22237396240234MB used\r\nSurvived 5,000,000 iterations: 0.22237396240234MB used\r\nSurvived 6,000,000 iterations: 0.22237396240234MB used\r\nSurvived 7,000,000 iterations: 0.22237396240234MB used\r\nSurvived 8,000,000 iterations: 0.22237396240234MB used\r\nSurvived 9,000,000 iterations: 0.22237396240234MB used\r\nSurvived 10,000,000 iterations: 0.22237396240234MB used\r\nSurvived 11,000,000 iterations: 0.22237396240234MB used\r\nSurvived 12,000,000 iterations: 0.22237396240234MB used\r\nSurvived 13,000,000 iterations: 0.22237396240234MB used\r\nSurvived 14,000,000 iterations: 0.22237396240234MB used\r\nSurvived 15,000,000 iterations: 0.22237396240234MB used\r\nSurvived 16,000,000 iterations: 0.22237396240234MB used\r\nSurvived 17,000,000 iterations: 0.22237396240234MB used\r\nSurvived 18,000,000 iterations: 0.22237396240234MB used\r\nSurvived 19,000,000 iterations: 0.22237396240234MB used\r\nSurvived 20,000,000 iterations: 0.22237396240234MB used\r\nSurvived 21,000,000 iterations: 0.22237396240234MB used\r\nSurvived 22,000,000 iterations: 0.22237396240234MB used\r\nSurvived 23,000,000 iterations: 0.22237396240234MB used\r\nSurvived 24,000,000 iterations: 0.22237396240234MB used\r\nSurvived 25,000,000 iterations: 0.22237396240234MB used\r\nSurvived 26,000,000 iterations: 0.22237396240234MB used\r\nSurvived 27,000,000 iterations: 0.22237396240234MB used\r\nSurvived 28,000,000 iterations: 0.22237396240234MB used\r\nSurvived 29,000,000 iterations: 0.22237396240234MB used\r\nSurvived 30,000,000 iterations: 0.22237396240234MB used\r\nSurvived 31,000,000 iterations: 0.22237396240234MB used\r\nSurvived 32,000,000 iterations: 0.22237396240234MB used\r\nSurvived 33,000,000 iterations: 0.22237396240234MB used\r\nSurvived 34,000,000 iterations: 0.22237396240234MB used\r\nSurvived 35,000,000 iterations: 0.22237396240234MB used\r\nSurvived 36,000,000 iterations: 0.22237396240234MB used\r\nSurvived 37,000,000 iterations: 0.22237396240234MB used\r\nSurvived 38,000,000 iterations: 0.22237396240234MB used\r\nSurvived 39,000,000 iterations: 0.22237396240234MB used\r\nSurvived 40,000,000 iterations: 0.22237396240234MB used\r\nSurvived 41,000,000 iterations: 0.22237396240234MB used\r\nSurvived 42,000,000 iterations: 0.22237396240234MB used\r\nSurvived 43,000,000 iterations: 0.22237396240234MB used\r\nSurvived 44,000,000 iterations: 0.22237396240234MB used\r\nSurvived 45,000,000 iterations: 0.22237396240234MB used\r\nSurvived 46,000,000 iterations: 0.22237396240234MB used\r\nSurvived 47,000,000 iterations: 0.22237396240234MB used\r\nSurvived 48,000,000 iterations: 0.22237396240234MB used\r\nSurvived 49,000,000 iterations: 0.22237396240234MB used\r\nSurvived 50,000,000 iterations: 0.22237396240234MB used\r\nSurvived 51,000,000 iterations: 0.22237396240234MB used\r\nSurvived 52,000,000 iterations: 0.22237396240234MB used\r\nSurvived 53,000,000 iterations: 0.22237396240234MB used\r\nSurvived 54,000,000 iterations: 0.22237396240234MB used\r\nSurvived 55,000,000 iterations: 0.22237396240234MB used\r\nSurvived 56,000,000 iterations: 0.22237396240234MB used\r\nSurvived 57,000,000 iterations: 0.22237396240234MB used\r\nSurvived 58,000,000 iterations: 0.22237396240234MB used\r\nSurvived 59,000,000 iterations: 0.22237396240234MB used\r\nSurvived 60,000,000 iterations: 0.22237396240234MB used\r\nSurvived 61,000,000 iterations: 0.22237396240234MB used\r\nSurvived 62,000,000 iterations: 0.22237396240234MB used\r\nSurvived 63,000,000 iterations: 0.22237396240234MB used\r\nSurvived 64,000,000 iterations: 0.22237396240234MB used\r\nSurvived 65,000,000 iterations: 0.22237396240234MB used\r\nSurvived 66,000,000 iterations: 0.22237396240234MB used\r\nSurvived 67,000,000 iterations: 0.22237396240234MB used\r\nSurvived 68,000,000 iterations: 0.22237396240234MB used\r\nSurvived 69,000,000 iterations: 0.22237396240234MB used\r\nSurvived 70,000,000 iterations: 0.22237396240234MB used\r\nSurvived 71,000,000 iterations: 0.22237396240234MB used\r\nSurvived 72,000,000 iterations: 0.22237396240234MB used\r\nSurvived 73,000,000 iterations: 0.22237396240234MB used\r\nSurvived 74,000,000 iterations: 0.22237396240234MB used\r\nSurvived 75,000,000 iterations: 0.22237396240234MB used\r\nSurvived 76,000,000 iterations: 0.22237396240234MB used\r\nSurvived 77,000,000 iterations: 0.22237396240234MB used\r\nSurvived 78,000,000 iterations: 0.22237396240234MB used\r\nSurvived 79,000,000 iterations: 0.22237396240234MB used\r\nSurvived 80,000,000 iterations: 0.22237396240234MB used\r\nSurvived 81,000,000 iterations: 0.22237396240234MB used\r\nSurvived 82,000,000 iterations: 0.22237396240234MB used\r\nSurvived 83,000,000 iterations: 0.22237396240234MB used\r\nSurvived 84,000,000 iterations: 0.22237396240234MB used\r\nSurvived 85,000,000 iterations: 0.22237396240234MB used\r\nSurvived 86,000,000 iterations: 0.22237396240234MB used\r\nSurvived 87,000,000 iterations: 0.22237396240234MB used\r\nSurvived 88,000,000 iterations: 0.22237396240234MB used\r\nSurvived 89,000,000 iterations: 0.22237396240234MB used\r\nSurvived 90,000,000 iterations: 0.22237396240234MB used\r\nSurvived 91,000,000 iterations: 0.22237396240234MB used\r\nSurvived 92,000,000 iterations: 0.22237396240234MB used\r\nSurvived 93,000,000 iterations: 0.22237396240234MB used\r\nSurvived 94,000,000 iterations: 0.22237396240234MB used\r\nSurvived 95,000,000 iterations: 0.22237396240234MB used\r\nSurvived 96,000,000 iterations: 0.22237396240234MB used\r\nSurvived 97,000,000 iterations: 0.22237396240234MB used\r\n^C\r\n```\r\n\r\n### Actual result\r\n\r\nWhat we actually see is that memory usage continuously increases under HHVM, until the kernel kills the process:\r\n\r\n```\r\n$ qhhvm cyclical_test.php\r\nSurvived 1,000,000 iterations: 92MB used\r\nSurvived 2,000,000 iterations: 184MB used\r\nSurvived 3,000,000 iterations: 276MB used\r\nSurvived 4,000,000 iterations: 368MB used\r\nSurvived 5,000,000 iterations: 460MB used\r\nSurvived 6,000,000 iterations: 550MB used\r\nSurvived 7,000,000 iterations: 642MB used\r\nSurvived 8,000,000 iterations: 734MB used\r\nSurvived 9,000,000 iterations: 826MB used\r\nSurvived 10,000,000 iterations: 916MB used\r\nSurvived 11,000,000 iterations: 1008MB used\r\nSurvived 12,000,000 iterations: 1100MB used\r\nSurvived 13,000,000 iterations: 1192MB used\r\nSurvived 14,000,000 iterations: 1284MB used\r\nSurvived 15,000,000 iterations: 1374MB used\r\nSurvived 16,000,000 iterations: 1466MB used\r\nSurvived 17,000,000 iterations: 1558MB used\r\nSurvived 18,000,000 iterations: 1650MB used\r\nSurvived 19,000,000 iterations: 1740MB used\r\nSurvived 20,000,000 iterations: 1832MB used\r\nSurvived 21,000,000 iterations: 1924MB used\r\nSurvived 22,000,000 iterations: 2016MB used\r\nSurvived 23,000,000 iterations: 2108MB used\r\nSurvived 24,000,000 iterations: 2198MB used\r\nSurvived 25,000,000 iterations: 2290MB used\r\nSurvived 26,000,000 iterations: 2382MB used\r\nSurvived 27,000,000 iterations: 2474MB used\r\nSurvived 28,000,000 iterations: 2564MB used\r\nSurvived 29,000,000 iterations: 2656MB used\r\nSurvived 30,000,000 iterations: 2748MB used\r\nSurvived 31,000,000 iterations: 2840MB used\r\nSurvived 32,000,000 iterations: 2932MB used\r\nSurvived 33,000,000 iterations: 3022MB used\r\nSurvived 34,000,000 iterations: 3114MB used\r\nSurvived 35,000,000 iterations: 3206MB used\r\nSurvived 36,000,000 iterations: 3298MB used\r\nSurvived 37,000,000 iterations: 3388MB used\r\nSurvived 38,000,000 iterations: 3480MB used\r\nSurvived 39,000,000 iterations: 3572MB used\r\nSurvived 40,000,000 iterations: 3664MB used\r\nSurvived 41,000,000 iterations: 3756MB used\r\nSurvived 42,000,000 iterations: 3846MB used\r\nSurvived 43,000,000 iterations: 3938MB used\r\nSurvived 44,000,000 iterations: 4030MB used\r\nSurvived 45,000,000 iterations: 4122MB used\r\nSurvived 46,000,000 iterations: 4212MB used\r\nKilled\r\n```\r\n\r\nEven with the (undocumented) garbage collector turned on, it still explodes\r\n\r\n```\r\n$ qhhvm -vEval.EnableGC=1 cyclical_test.php\r\nSurvived 1,000,000 iterations: 92MB used\r\nSurvived 2,000,000 iterations: 184MB used\r\nSurvived 3,000,000 iterations: 276MB used\r\nSurvived 4,000,000 iterations: 368MB used\r\nSurvived 5,000,000 iterations: 460MB used\r\nSurvived 6,000,000 iterations: 550MB used\r\nSurvived 7,000,000 iterations: 642MB used\r\nSurvived 8,000,000 iterations: 734MB used\r\nSurvived 9,000,000 iterations: 826MB used\r\nSurvived 10,000,000 iterations: 916MB used\r\nSurvived 11,000,000 iterations: 1008MB used\r\nSurvived 12,000,000 iterations: 1100MB used\r\nSurvived 13,000,000 iterations: 1192MB used\r\nSurvived 14,000,000 iterations: 1284MB used\r\nSurvived 15,000,000 iterations: 1374MB used\r\nSurvived 16,000,000 iterations: 1466MB used\r\nSurvived 17,000,000 iterations: 1558MB used\r\nSurvived 18,000,000 iterations: 1650MB used\r\nSurvived 19,000,000 iterations: 1740MB used\r\nSurvived 20,000,000 iterations: 1832MB used\r\nSurvived 21,000,000 iterations: 1924MB used\r\nSurvived 22,000,000 iterations: 2016MB used\r\nSurvived 23,000,000 iterations: 2108MB used\r\nSurvived 24,000,000 iterations: 2198MB used\r\nSurvived 25,000,000 iterations: 2290MB used\r\nSurvived 26,000,000 iterations: 2382MB used\r\nSurvived 27,000,000 iterations: 2474MB used\r\nSurvived 28,000,000 iterations: 2564MB used\r\nSurvived 29,000,000 iterations: 2656MB used\r\nSurvived 30,000,000 iterations: 2748MB used\r\nSurvived 31,000,000 iterations: 2840MB used\r\nSurvived 32,000,000 iterations: 2932MB used\r\nSurvived 33,000,000 iterations: 3022MB used\r\nSurvived 34,000,000 iterations: 3114MB used\r\nSurvived 35,000,000 iterations: 3206MB used\r\nSurvived 36,000,000 iterations: 3298MB used\r\nSurvived 37,000,000 iterations: 3388MB used\r\nSurvived 38,000,000 iterations: 3480MB used\r\nSurvived 39,000,000 iterations: 3572MB used\r\nSurvived 40,000,000 iterations: 3664MB used\r\nSurvived 41,000,000 iterations: 3756MB used\r\nSurvived 42,000,000 iterations: 3846MB used\r\nKilled\r\n```"},"comment":{"url":"https://api.github.com/repos/facebook/hhvm/issues/comments/247740693","html_url":"https://github.com/facebook/hhvm/issues/7345#issuecomment-247740693","issue_url":"https://api.github.com/repos/facebook/hhvm/issues/7345","id":247740693,"user":{"login":"firodj","id":1750918,"avatar_url":"https://avatars.githubusercontent.com/u/1750918?v=3","gravatar_id":"","url":"https://api.github.com/users/firodj","html_url":"https://github.com/firodj","followers_url":"https://api.github.com/users/firodj/followers","following_url":"https://api.github.com/users/firodj/following{/other_user}","gists_url":"https://api.github.com/users/firodj/gists{/gist_id}","starred_url":"https://api.github.com/users/firodj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/firodj/subscriptions","organizations_url":"https://api.github.com/users/firodj/orgs","repos_url":"https://api.github.com/users/firodj/repos","events_url":"https://api.github.com/users/firodj/events{/privacy}","received_events_url":"https://api.github.com/users/firodj/received_events","type":"User","site_admin":false},"created_at":"2016-09-17T01:18:31Z","updated_at":"2016-09-17T01:18:31Z","body":"what is qhhvm? but that was for long running script on CLI? how about the script when running on server, it is same or not?"}}
{"actor":{"display_login":"firodj"}}