{"action":"created","comment":{"url":"https://api.github.com/repos/cuberite/cuberite/pulls/comments/47977355","id":47977355,"diff_hunk":"@@ -44,26 +44,6 @@ cChunkData::cChunkData(cAllocationPool<cChunkData::sChunkSection> & a_Pool) :\n \n \n \n-cChunkData::~cChunkData()\n-{\n-\t#if __cplusplus < 201103L\n-\t\t// auto_ptr style interface for memory management\n-\t\tif (!m_IsOwner)\n-\t\t{\n-\t\t\treturn;\n-\t\t}\n-\t#endif\n-\tfor (size_t i = 0; i < NumSections; i++)\n-\t{\n-\t\tFree(m_Sections[i]);\n-\t\tm_Sections[i] = nullptr;\n-\t}\n-}","path":"src/ChunkData.cpp","position":18,"original_position":18,"commit_id":"ac3cf9dde37bfacf80e7524e54c641e01526d0de","original_commit_id":"ac3cf9dde37bfacf80e7524e54c641e01526d0de","user":{"login":"tigerw","id":2939130,"avatar_url":"https://avatars.githubusercontent.com/u/2939130?v=3","gravatar_id":"","url":"https://api.github.com/users/tigerw","html_url":"https://github.com/tigerw","followers_url":"https://api.github.com/users/tigerw/followers","following_url":"https://api.github.com/users/tigerw/following{/other_user}","gists_url":"https://api.github.com/users/tigerw/gists{/gist_id}","starred_url":"https://api.github.com/users/tigerw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tigerw/subscriptions","organizations_url":"https://api.github.com/users/tigerw/orgs","repos_url":"https://api.github.com/users/tigerw/repos","events_url":"https://api.github.com/users/tigerw/events{/privacy}","received_events_url":"https://api.github.com/users/tigerw/received_events","type":"User","site_admin":false},"body":"I think I was trying stuff with ChunkData and not completely reverting it.\r\n\r\nWhy the __cplusplus macros by the way?","created_at":"2015-12-17T23:38:00Z","updated_at":"2015-12-17T23:38:00Z","html_url":"https://github.com/cuberite/cuberite/pull/2565#discussion_r47977355","pull_request_url":"https://api.github.com/repos/cuberite/cuberite/pulls/2565","_links":{"self":{"href":"https://api.github.com/repos/cuberite/cuberite/pulls/comments/47977355"},"html":{"href":"https://github.com/cuberite/cuberite/pull/2565#discussion_r47977355"},"pull_request":{"href":"https://api.github.com/repos/cuberite/cuberite/pulls/2565"}}},"pull_request":{"url":"https://api.github.com/repos/cuberite/cuberite/pulls/2565","id":48785401,"html_url":"https://github.com/cuberite/cuberite/pull/2565","diff_url":"https://github.com/cuberite/cuberite/pull/2565.diff","patch_url":"https://github.com/cuberite/cuberite/pull/2565.patch","issue_url":"https://api.github.com/repos/cuberite/cuberite/issues/2565","number":2565,"state":"open","locked":false,"title":"Simplified cChunkMap chunk storage","user":{"login":"tigerw","id":2939130,"avatar_url":"https://avatars.githubusercontent.com/u/2939130?v=3","gravatar_id":"","url":"https://api.github.com/users/tigerw","html_url":"https://github.com/tigerw","followers_url":"https://api.github.com/users/tigerw/followers","following_url":"https://api.github.com/users/tigerw/following{/other_user}","gists_url":"https://api.github.com/users/tigerw/gists{/gist_id}","starred_url":"https://api.github.com/users/tigerw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tigerw/subscriptions","organizations_url":"https://api.github.com/users/tigerw/orgs","repos_url":"https://api.github.com/users/tigerw/repos","events_url":"https://api.github.com/users/tigerw/events{/privacy}","received_events_url":"https://api.github.com/users/tigerw/received_events","type":"User","site_admin":false},"body":"Funnily enough, on my system, on this particular world, std::map is at least as fast, sometimes faster than the array splitting approach we use:\r\n\r\nCurrent:\r\n```\r\n     [19:55:03] Preparing spawn (world): 3.50% (14/400; 13.78 chunks / sec)\r\n     [19:55:04] Preparing spawn (world): 13.00% (52/400; 37.25 chunks / sec)\r\n     [19:55:04] Chunk generator performance: 53.68 ch / sec (108 ch total)\r\n     [19:55:05] Preparing spawn (world): 26.75% (107/400; 53.45 chunks / sec)\r\n     [19:55:06] Preparing spawn (world): 40.75% (163/400; 54.90 chunks / sec)\r\n     [19:55:06] Chunk generator performance: 55.86 ch / sec (226 ch total)\r\n     [19:55:07] Preparing spawn (world): 51.50% (206/400; 42.83 chunks / sec)\r\n     [19:55:08] Preparing spawn (world): 64.50% (258/400; 51.74 chunks / sec)\r\n     [19:55:08] Chunk generator performance: 54.90 ch / sec (333 ch total)\r\n     [19:55:09] Preparing spawn (world): 77.75% (311/400; 52.68 chunks / sec)\r\n     [19:55:10] Preparing spawn (world): 92.00% (368/400; 56.44 chunks / sec)\r\n     [19:55:10] Chunk generator performance: 56.02 ch / sec (453 ch total)\r\n     [19:55:11] Startup complete, took 10432ms!\r\nInfo [19:57:12] User cheesedummy10 authenticated with UUID 91c40b1eb8954561a6aa735b05632cc9\r\n     [19:57:12] Player data file not found for cheesedummy10 (91c40b1eb8954561a6aa735b05632cc9, offline 18446de9338f3b28859a231072cb0568 (unused)), will be reset to defaults.\r\nInfo [19:57:12] Player cheesedummy10 has joined the game\r\n     [19:57:15] Chunk generator performance: 40.03 ch / sec (48 ch total)\r\n     [19:57:20] Chunk generator performance: 38.33 ch / sec (77 ch total)\r\n     [19:57:22] Chunk generator performance: 41.86 ch / sec (168 ch total)\r\n     [19:57:37] Chunk generator performance: 43.91 ch / sec (89 ch total)\r\n     [19:57:40] Chunk generator performance: 46.36 ch / sec (93 ch total)\r\n```\r\n\r\nNew:\r\n```\r\n     [19:40:25] Preparing spawn (world): 4.75% (19/400; 18.52 chunks / sec)\r\n     [19:40:26] Preparing spawn (world): 20.50% (82/400; 61.95 chunks / sec)\r\n     [19:40:27] Chunk generator performance: 68.30 ch / sec (137 ch total)\r\n     [19:40:27] Preparing spawn (world): 37.00% (148/400; 64.83 chunks / sec)\r\n     [19:40:28] Preparing spawn (world): 53.25% (213/400; 63.48 chunks / sec)\r\n     [19:40:29] Chunk generator performance: 69.47 ch / sec (279 ch total)\r\n     [19:40:30] Preparing spawn (world): 70.00% (280/400; 65.94 chunks / sec)\r\n     [19:40:31] Chunk generator performance: 69.86 ch / sec (421 ch total)\r\n     [19:40:31] Preparing spawn (world): 85.75% (343/400; 61.76 chunks / sec)\r\n     [19:40:31] Startup complete, took 7274ms!\r\nInfo [19:40:36] User cheesedummy10 authenticated with UUID 91c40b1eb8954561a6aa735b05632cc9\r\n     [19:40:36] Player data file not found for cheesedummy10 (91c40b1eb8954561a6aa735b05632cc9, offline 18446de9338f3b28859a231072cb0568 (unused)), will be reset to defaults.\r\nInfo [19:40:36] Player cheesedummy10 has joined the game\r\n     [19:40:38] Chunk generator performance: 43.40 ch / sec (46 ch total)\r\n     [19:40:44] Chunk generator performance: 51.85 ch / sec (105 ch total)\r\n     [19:40:57] Chunk generator performance: 53.44 ch / sec (80 ch total)\r\n     [19:41:00] Chunk generator performance: 52.39 ch / sec (81 ch total)\r\n     [19:41:04] Chunk generator performance: 53.37 ch / sec (80 ch total)\r\n```","created_at":"2015-10-26T19:26:32Z","updated_at":"2015-12-17T23:38:00Z","closed_at":null,"merged_at":null,"merge_commit_sha":"7f57ef79d6df29ed74a76e1780cca2216675b9d4","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/cuberite/cuberite/pulls/2565/commits","review_comments_url":"https://api.github.com/repos/cuberite/cuberite/pulls/2565/comments","review_comment_url":"https://api.github.com/repos/cuberite/cuberite/pulls/comments{/number}","comments_url":"https://api.github.com/repos/cuberite/cuberite/issues/2565/comments","statuses_url":"https://api.github.com/repos/cuberite/cuberite/statuses/ac3cf9dde37bfacf80e7524e54c641e01526d0de","head":{"label":"cuberite:chunkysparsing","ref":"chunkysparsing","sha":"ac3cf9dde37bfacf80e7524e54c641e01526d0de","user":{"login":"cuberite","id":8973961,"avatar_url":"https://avatars.githubusercontent.com/u/8973961?v=3","gravatar_id":"","url":"https://api.github.com/users/cuberite","html_url":"https://github.com/cuberite","followers_url":"https://api.github.com/users/cuberite/followers","following_url":"https://api.github.com/users/cuberite/following{/other_user}","gists_url":"https://api.github.com/users/cuberite/gists{/gist_id}","starred_url":"https://api.github.com/users/cuberite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cuberite/subscriptions","organizations_url":"https://api.github.com/users/cuberite/orgs","repos_url":"https://api.github.com/users/cuberite/repos","events_url":"https://api.github.com/users/cuberite/events{/privacy}","received_events_url":"https://api.github.com/users/cuberite/received_events","type":"Organization","site_admin":false},"repo":{"id":11693709,"name":"cuberite","full_name":"cuberite/cuberite","owner":{"login":"cuberite","id":8973961,"avatar_url":"https://avatars.githubusercontent.com/u/8973961?v=3","gravatar_id":"","url":"https://api.github.com/users/cuberite","html_url":"https://github.com/cuberite","followers_url":"https://api.github.com/users/cuberite/followers","following_url":"https://api.github.com/users/cuberite/following{/other_user}","gists_url":"https://api.github.com/users/cuberite/gists{/gist_id}","starred_url":"https://api.github.com/users/cuberite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cuberite/subscriptions","organizations_url":"https://api.github.com/users/cuberite/orgs","repos_url":"https://api.github.com/users/cuberite/repos","events_url":"https://api.github.com/users/cuberite/events{/privacy}","received_events_url":"https://api.github.com/users/cuberite/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/cuberite/cuberite","description":"A performant C++ Minecraft compatible game server","fork":false,"url":"https://api.github.com/repos/cuberite/cuberite","forks_url":"https://api.github.com/repos/cuberite/cuberite/forks","keys_url":"https://api.github.com/repos/cuberite/cuberite/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cuberite/cuberite/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cuberite/cuberite/teams","hooks_url":"https://api.github.com/repos/cuberite/cuberite/hooks","issue_events_url":"https://api.github.com/repos/cuberite/cuberite/issues/events{/number}","events_url":"https://api.github.com/repos/cuberite/cuberite/events","assignees_url":"https://api.github.com/repos/cuberite/cuberite/assignees{/user}","branches_url":"https://api.github.com/repos/cuberite/cuberite/branches{/branch}","tags_url":"https://api.github.com/repos/cuberite/cuberite/tags","blobs_url":"https://api.github.com/repos/cuberite/cuberite/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cuberite/cuberite/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cuberite/cuberite/git/refs{/sha}","trees_url":"https://api.github.com/repos/cuberite/cuberite/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cuberite/cuberite/statuses/{sha}","languages_url":"https://api.github.com/repos/cuberite/cuberite/languages","stargazers_url":"https://api.github.com/repos/cuberite/cuberite/stargazers","contributors_url":"https://api.github.com/repos/cuberite/cuberite/contributors","subscribers_url":"https://api.github.com/repos/cuberite/cuberite/subscribers","subscription_url":"https://api.github.com/repos/cuberite/cuberite/subscription","commits_url":"https://api.github.com/repos/cuberite/cuberite/commits{/sha}","git_commits_url":"https://api.github.com/repos/cuberite/cuberite/git/commits{/sha}","comments_url":"https://api.github.com/repos/cuberite/cuberite/comments{/number}","issue_comment_url":"https://api.github.com/repos/cuberite/cuberite/issues/comments{/number}","contents_url":"https://api.github.com/repos/cuberite/cuberite/contents/{+path}","compare_url":"https://api.github.com/repos/cuberite/cuberite/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cuberite/cuberite/merges","archive_url":"https://api.github.com/repos/cuberite/cuberite/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cuberite/cuberite/downloads","issues_url":"https://api.github.com/repos/cuberite/cuberite/issues{/number}","pulls_url":"https://api.github.com/repos/cuberite/cuberite/pulls{/number}","milestones_url":"https://api.github.com/repos/cuberite/cuberite/milestones{/number}","notifications_url":"https://api.github.com/repos/cuberite/cuberite/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cuberite/cuberite/labels{/name}","releases_url":"https://api.github.com/repos/cuberite/cuberite/releases{/id}","created_at":"2013-07-26T19:56:59Z","updated_at":"2015-12-17T23:14:14Z","pushed_at":"2015-12-17T23:31:36Z","git_url":"git://github.com/cuberite/cuberite.git","ssh_url":"git@github.com:cuberite/cuberite.git","clone_url":"https://github.com/cuberite/cuberite.git","svn_url":"https://github.com/cuberite/cuberite","homepage":"http://cuberite.org","size":146822,"stargazers_count":1007,"watchers_count":1007,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":259,"mirror_url":null,"open_issues_count":430,"forks":259,"open_issues":430,"watchers":1007,"default_branch":"master"}},"base":{"label":"cuberite:master","ref":"master","sha":"a7d0abcdc1f62038094f22805b2ffaab860aad08","user":{"login":"cuberite","id":8973961,"avatar_url":"https://avatars.githubusercontent.com/u/8973961?v=3","gravatar_id":"","url":"https://api.github.com/users/cuberite","html_url":"https://github.com/cuberite","followers_url":"https://api.github.com/users/cuberite/followers","following_url":"https://api.github.com/users/cuberite/following{/other_user}","gists_url":"https://api.github.com/users/cuberite/gists{/gist_id}","starred_url":"https://api.github.com/users/cuberite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cuberite/subscriptions","organizations_url":"https://api.github.com/users/cuberite/orgs","repos_url":"https://api.github.com/users/cuberite/repos","events_url":"https://api.github.com/users/cuberite/events{/privacy}","received_events_url":"https://api.github.com/users/cuberite/received_events","type":"Organization","site_admin":false},"repo":{"id":11693709,"name":"cuberite","full_name":"cuberite/cuberite","owner":{"login":"cuberite","id":8973961,"avatar_url":"https://avatars.githubusercontent.com/u/8973961?v=3","gravatar_id":"","url":"https://api.github.com/users/cuberite","html_url":"https://github.com/cuberite","followers_url":"https://api.github.com/users/cuberite/followers","following_url":"https://api.github.com/users/cuberite/following{/other_user}","gists_url":"https://api.github.com/users/cuberite/gists{/gist_id}","starred_url":"https://api.github.com/users/cuberite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cuberite/subscriptions","organizations_url":"https://api.github.com/users/cuberite/orgs","repos_url":"https://api.github.com/users/cuberite/repos","events_url":"https://api.github.com/users/cuberite/events{/privacy}","received_events_url":"https://api.github.com/users/cuberite/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/cuberite/cuberite","description":"A performant C++ Minecraft compatible game server","fork":false,"url":"https://api.github.com/repos/cuberite/cuberite","forks_url":"https://api.github.com/repos/cuberite/cuberite/forks","keys_url":"https://api.github.com/repos/cuberite/cuberite/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cuberite/cuberite/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cuberite/cuberite/teams","hooks_url":"https://api.github.com/repos/cuberite/cuberite/hooks","issue_events_url":"https://api.github.com/repos/cuberite/cuberite/issues/events{/number}","events_url":"https://api.github.com/repos/cuberite/cuberite/events","assignees_url":"https://api.github.com/repos/cuberite/cuberite/assignees{/user}","branches_url":"https://api.github.com/repos/cuberite/cuberite/branches{/branch}","tags_url":"https://api.github.com/repos/cuberite/cuberite/tags","blobs_url":"https://api.github.com/repos/cuberite/cuberite/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cuberite/cuberite/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cuberite/cuberite/git/refs{/sha}","trees_url":"https://api.github.com/repos/cuberite/cuberite/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cuberite/cuberite/statuses/{sha}","languages_url":"https://api.github.com/repos/cuberite/cuberite/languages","stargazers_url":"https://api.github.com/repos/cuberite/cuberite/stargazers","contributors_url":"https://api.github.com/repos/cuberite/cuberite/contributors","subscribers_url":"https://api.github.com/repos/cuberite/cuberite/subscribers","subscription_url":"https://api.github.com/repos/cuberite/cuberite/subscription","commits_url":"https://api.github.com/repos/cuberite/cuberite/commits{/sha}","git_commits_url":"https://api.github.com/repos/cuberite/cuberite/git/commits{/sha}","comments_url":"https://api.github.com/repos/cuberite/cuberite/comments{/number}","issue_comment_url":"https://api.github.com/repos/cuberite/cuberite/issues/comments{/number}","contents_url":"https://api.github.com/repos/cuberite/cuberite/contents/{+path}","compare_url":"https://api.github.com/repos/cuberite/cuberite/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cuberite/cuberite/merges","archive_url":"https://api.github.com/repos/cuberite/cuberite/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cuberite/cuberite/downloads","issues_url":"https://api.github.com/repos/cuberite/cuberite/issues{/number}","pulls_url":"https://api.github.com/repos/cuberite/cuberite/pulls{/number}","milestones_url":"https://api.github.com/repos/cuberite/cuberite/milestones{/number}","notifications_url":"https://api.github.com/repos/cuberite/cuberite/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cuberite/cuberite/labels{/name}","releases_url":"https://api.github.com/repos/cuberite/cuberite/releases{/id}","created_at":"2013-07-26T19:56:59Z","updated_at":"2015-12-17T23:14:14Z","pushed_at":"2015-12-17T23:31:36Z","git_url":"git://github.com/cuberite/cuberite.git","ssh_url":"git@github.com:cuberite/cuberite.git","clone_url":"https://github.com/cuberite/cuberite.git","svn_url":"https://github.com/cuberite/cuberite","homepage":"http://cuberite.org","size":146822,"stargazers_count":1007,"watchers_count":1007,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":259,"mirror_url":null,"open_issues_count":430,"forks":259,"open_issues":430,"watchers":1007,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/cuberite/cuberite/pulls/2565"},"html":{"href":"https://github.com/cuberite/cuberite/pull/2565"},"issue":{"href":"https://api.github.com/repos/cuberite/cuberite/issues/2565"},"comments":{"href":"https://api.github.com/repos/cuberite/cuberite/issues/2565/comments"},"review_comments":{"href":"https://api.github.com/repos/cuberite/cuberite/pulls/2565/comments"},"review_comment":{"href":"https://api.github.com/repos/cuberite/cuberite/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/cuberite/cuberite/pulls/2565/commits"},"statuses":{"href":"https://api.github.com/repos/cuberite/cuberite/statuses/ac3cf9dde37bfacf80e7524e54c641e01526d0de"}}}}