{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":572703565,"defaultBranch":"master","name":"HomeStore","ownerLogin":"eBay","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-11-30T21:13:26.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/3639281?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1715755393.0","currentOid":""},"activityList":{"items":[{"before":"85dfa15cf51573d235e3e9ab2cd91691630ada2e","after":null,"ref":"refs/heads/revert-416-flip","pushedAt":"2024-05-15T06:43:13.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"JacksonYao287","name":"Jie Yao","path":"/JacksonYao287","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80438902?s=80&v=4"}},{"before":"27a51b631f8652915d9b5fe305b61841f74c9ecf","after":"cd8a565241dfc074da84a0b160e96ceeeaa47e39","ref":"refs/heads/master","pushedAt":"2024-05-15T06:43:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"JacksonYao287","name":"Jie Yao","path":"/JacksonYao287","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80438902?s=80&v=4"},"commit":{"message":"Revert \"inject flip into io path to simulate io error and stuck io (#416)\" (#425)\n\nsince we already have flip injections for all IO issue in IOManager level, no need to add more injection in homestore level","shortMessageHtmlLink":"Revert \"inject flip into io path to simulate io error and stuck io (#416"}},{"before":null,"after":"85dfa15cf51573d235e3e9ab2cd91691630ada2e","ref":"refs/heads/revert-416-flip","pushedAt":"2024-05-15T04:02:35.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"JacksonYao287","name":"Jie Yao","path":"/JacksonYao287","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80438902?s=80&v=4"},"commit":{"message":"Revert \"inject flip into io path to simulate io error and stuck io (#416)\"\n\nThis reverts commit 27a51b631f8652915d9b5fe305b61841f74c9ecf.","shortMessageHtmlLink":"Revert \"inject flip into io path to simulate io error and stuck io (#416"}},{"before":"b9b79c52416955d09db190e8cfbe548fbb2f6a2e","after":"27a51b631f8652915d9b5fe305b61841f74c9ecf","ref":"refs/heads/master","pushedAt":"2024-05-15T03:21:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"JacksonYao287","name":"Jie Yao","path":"/JacksonYao287","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80438902?s=80&v=4"},"commit":{"message":"inject flip into io path to simulate io error and stuck io (#416)","shortMessageHtmlLink":"inject flip into io path to simulate io error and stuck io (#416)"}},{"before":"78aead7920e60beaef29fa5f049177b3f03dadd9","after":"b9b79c52416955d09db190e8cfbe548fbb2f6a2e","ref":"refs/heads/master","pushedAt":"2024-05-14T13:07:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"JacksonYao287","name":"Jie Yao","path":"/JacksonYao287","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80438902?s=80&v=4"},"commit":{"message":"fix logstore recovery issue (#413)\n\nthe recovery issue is caused by the logdev metablk recovery callback rollback_super_blk_found, it will put all the log dev to m_unopened_logdev , which will be destroyed when logservice start.\r\n\r\nin this pr :\r\n\r\n1 change the logic about m_unopened_logdev to make sure only those log devs which are not opened before logservice#start will be destroyed.\r\n\r\n2 change the metablk dependency , so that rollback_super_blk_found will be called after all the log dev metablk are recovered\r\n\r\n3 add logic to make sure the logstore of a repldev is ready before it is going to join raft group. now , we use a future to open logstore, so there might be a small case that logstore is not ready when repldev is joining raft group","shortMessageHtmlLink":"fix logstore recovery issue (#413)"}},{"before":"74ca779191a2408d8b1fe56806785c7ac1850190","after":"78aead7920e60beaef29fa5f049177b3f03dadd9","ref":"refs/heads/master","pushedAt":"2024-05-11T00:00:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hkadayam","name":"Harihara Kadayam","path":"/hkadayam","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14349812?s=80&v=4"},"commit":{"message":"Crash recovery of BlkAllocator fixes (#403)\n\n* AppendBlkAllocator to implement alloc_on_cache and alloc_on_disk\r\n* FixedBlkAllocator didn't implement pre-alloc during recovery, implemented that\r\n* Combined free_on_disk() to free()","shortMessageHtmlLink":"Crash recovery of BlkAllocator fixes (#403)"}},{"before":"97cba119a6eaf5609bad70d490178b10bb5ff149","after":"74ca779191a2408d8b1fe56806785c7ac1850190","ref":"refs/heads/master","pushedAt":"2024-05-08T17:00:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"sanebay","name":"Sanal","path":"/sanebay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/129343854?s=80&v=4"},"commit":{"message":"Fix test of last chunk when recovery of logstore. (#404)","shortMessageHtmlLink":"Fix test of last chunk when recovery of logstore. (#404)"}},{"before":"12390e7ead680221086dad20f7a4e3f1d8655f6e","after":"97cba119a6eaf5609bad70d490178b10bb5ff149","ref":"refs/heads/master","pushedAt":"2024-05-08T10:32:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"JacksonYao287","name":"Jie Yao","path":"/JacksonYao287","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80438902?s=80&v=4"},"commit":{"message":"handle missing pdev when reading (#405)\n\nin some scenarios, homestore might be restarted with missing pdev(for example, breakfix), thus all the chunks in that pdev will not be loaded. so we need to deal with this case.\r\n\r\n1 for read from client, we need to check whether the chunk in the provided blkid is loaded and proceed accordingly.\r\n2 for write , we will almost not encounter this case since we will never allocate blk for a missing pdev. but for the sake of completeness, check is also added .","shortMessageHtmlLink":"handle missing pdev when reading (#405)"}},{"before":"42c57741f4b60c27b3358e68384a56cb2e4181c6","after":"12390e7ead680221086dad20f7a4e3f1d8655f6e","ref":"refs/heads/master","pushedAt":"2024-05-07T21:05:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"szmyd","name":"Brian Szmyd","path":"/szmyd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2677746?s=80&v=4"},"commit":{"message":"Fix nuraft mesg version. (#406)","shortMessageHtmlLink":"Fix nuraft mesg version. (#406)"}},{"before":"abeddaab78c2b202322711c353c932d2fd65ae8f","after":"42c57741f4b60c27b3358e68384a56cb2e4181c6","ref":"refs/heads/master","pushedAt":"2024-05-03T19:53:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"sanebay","name":"Sanal","path":"/sanebay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/129343854?s=80&v=4"},"commit":{"message":"Remove logdev which are unopened during recovery. (#398)\n\nRemoving repl dev will remove the logdev. If logdev or log\r\nstore are not opened during, they are marked as ununsed and\r\ndeleted. Remove chunks from the journal descriptor.\r\nRemove the logdev metablk.","shortMessageHtmlLink":"Remove logdev which are unopened during recovery. (#398)"}},{"before":"5279147cd0200bee317d3b68fd67d2ed5bbc2e83","after":"abeddaab78c2b202322711c353c932d2fd65ae8f","ref":"refs/heads/master","pushedAt":"2024-05-02T02:01:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hkadayam","name":"Harihara Kadayam","path":"/hkadayam","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14349812?s=80&v=4"},"commit":{"message":"Added remove repl_dev and made repl_req much more contained (#392)\n\n* Added remove repl_dev and made repl_req much more contained","shortMessageHtmlLink":"Added remove repl_dev and made repl_req much more contained (#392)"}},{"before":"7804a4e23502521078495d8fc63fc6e464885943","after":"5279147cd0200bee317d3b68fd67d2ed5bbc2e83","ref":"refs/heads/master","pushedAt":"2024-04-30T03:55:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"shosseinimotlagh","name":"Mehdi Hosseini","path":"/shosseinimotlagh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116847813?s=80&v=4"},"commit":{"message":"Fix clean restart for index (#397)","shortMessageHtmlLink":"Fix clean restart for index (#397)"}},{"before":"cbe45efac1b5f761a136803469d4067237d1d932","after":"7804a4e23502521078495d8fc63fc6e464885943","ref":"refs/heads/master","pushedAt":"2024-04-26T06:44:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"shosseinimotlagh","name":"Mehdi Hosseini","path":"/shosseinimotlagh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116847813?s=80&v=4"},"commit":{"message":"Fix index script (#395)","shortMessageHtmlLink":"Fix index script (#395)"}},{"before":"7eafcf248c4e07aefa7c1e8a1fb1437c2b56f58d","after":"cbe45efac1b5f761a136803469d4067237d1d932","ref":"refs/heads/master","pushedAt":"2024-04-25T00:29:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"sanebay","name":"Sanal","path":"/sanebay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/129343854?s=80&v=4"},"commit":{"message":"Disable resource mgr truncation timer in logstore and logdev tests. (#391)","shortMessageHtmlLink":"Disable resource mgr truncation timer in logstore and logdev tests. (#…"}},{"before":"6ae31e1b2c67aefb4806b9b1b75a32dc618aecd5","after":"7eafcf248c4e07aefa7c1e8a1fb1437c2b56f58d","ref":"refs/heads/master","pushedAt":"2024-04-22T23:08:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yamingk","name":"Yaming Kuang","path":"/yamingk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1477567?s=80&v=4"},"commit":{"message":"don't truncate on if compact_lsn is zero (#389)","shortMessageHtmlLink":"don't truncate on if compact_lsn is zero (#389)"}},{"before":"60024885ed18d4b9adaf581dc2cc5744aba6c060","after":"6ae31e1b2c67aefb4806b9b1b75a32dc618aecd5","ref":"refs/heads/master","pushedAt":"2024-04-18T23:10:52.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yamingk","name":"Yaming Kuang","path":"/yamingk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1477567?s=80&v=4"},"commit":{"message":"Replication Snapshot and Compact (#368)\n\n* issue 258: replication truncate initial commit\r\n* homestore truncate\r\n* add last_snapshot() api\r\n* nuraft to drive compact\r\n* bump conan ver\r\n* address comments\r\n* add comment around num resvd log items","shortMessageHtmlLink":"Replication Snapshot and Compact (#368)"}},{"before":"6f93ea40045916f8bbbbc3ff897fc616cde984a1","after":"60024885ed18d4b9adaf581dc2cc5744aba6c060","ref":"refs/heads/master","pushedAt":"2024-04-17T12:47:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"xiaoxichen","name":"Xiaoxi Chen","path":"/xiaoxichen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1584218?s=80&v=4"},"commit":{"message":"prevent chunk_size overflow. (#382)\n\nThe default num_chunks is 1, if upper layer doesnt set num_chunk\r\nproperly, the\r\nchunk_size(uint32) = device_size(uint64) / num_chunks(uint32)\r\n\r\ncan be overlow.\r\n\r\nSigned-off-by: Xiaoxi Chen ","shortMessageHtmlLink":"prevent chunk_size overflow. (#382)"}},{"before":"ed5b061e0a596ce23b912bf6244f0c3c3592d550","after":"6f93ea40045916f8bbbbc3ff897fc616cde984a1","ref":"refs/heads/master","pushedAt":"2024-04-17T00:38:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"xiaoxichen","name":"Xiaoxi Chen","path":"/xiaoxichen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1584218?s=80&v=4"},"commit":{"message":"Bug fixes for create_vdev (#381)\n\n* Bug fixes for create_vdev\r\n\r\n1. max_num_chunks should based on vdev_size/min_chunk_size, previous\r\nimplementation wrongly include other pdevs that doesnt belongs to this\r\nvdev(e.g different type).\r\n\r\n2. we should never round up vdev size as this might causing vdev size\r\nexceed underlaying pdev size.\r\n\r\n3. a few other fixes.\r\n\r\nAdd a set of sanity checks as well as UT to ensure chunks are align\r\nto pdev->align_size().\r\n\r\nFixes: https://github.com/eBay/HomeStore/issues/377\r\n\r\nSigned-off-by: Xiaoxi Chen \r\n\r\n* Fix logdev UT that use 8MB chunk size\r\n\r\nSigned-off-by: Xiaoxi Chen \r\n\r\n* Fix device_manager ut\r\n\r\npreviously we have use-after-release as during restart HS\r\nall chunk are released. But after restart we dont refresh our\r\nvdev vector which still refering to old chunks.\r\n\r\nSigned-off-by: Xiaoxi Chen ","shortMessageHtmlLink":"Bug fixes for create_vdev (#381)"}},{"before":"ae2bdc063d72507eb784f0df0a26eac2386a1f41","after":"ed5b061e0a596ce23b912bf6244f0c3c3592d550","ref":"refs/heads/master","pushedAt":"2024-04-12T01:04:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"sanebay","name":"Sanal","path":"/sanebay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/129343854?s=80&v=4"},"commit":{"message":"Add multiple chunk test for journal vdev. (#358)","shortMessageHtmlLink":"Add multiple chunk test for journal vdev. (#358)"}},{"before":"477ad3b3b7d38af5744d37d04a1d38a5e4f61bfc","after":"ae2bdc063d72507eb784f0df0a26eac2386a1f41","ref":"refs/heads/master","pushedAt":"2024-04-08T14:36:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hkadayam","name":"Harihara Kadayam","path":"/hkadayam","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14349812?s=80&v=4"},"commit":{"message":"Update version_change_check.yml","shortMessageHtmlLink":"Update version_change_check.yml"}},{"before":"60808d0fc7bfb0fc080426c4448dba93c72e17d4","after":"477ad3b3b7d38af5744d37d04a1d38a5e4f61bfc","ref":"refs/heads/master","pushedAt":"2024-04-08T14:32:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hkadayam","name":"Harihara Kadayam","path":"/hkadayam","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14349812?s=80&v=4"},"commit":{"message":"Create version_change_check","shortMessageHtmlLink":"Create version_change_check"}},{"before":"485e6565f12e9f12f179f9aa7c4697b20464e9cd","after":"60808d0fc7bfb0fc080426c4448dba93c72e17d4","ref":"refs/heads/master","pushedAt":"2024-04-05T03:37:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"xiaoxichen","name":"Xiaoxi Chen","path":"/xiaoxichen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1584218?s=80&v=4"},"commit":{"message":"Allowing consumer of HS specified device type for each service (#355)\n\n* Add dev_type in format_params.\r\n\r\nSetting to auto will decide based on whether we have\r\nFAST and the service characteristic.\r\n\r\nAlso chaning pct_to_size to take the size of that type.\r\n\r\nSigned-off-by: Xiaoxi Chen ","shortMessageHtmlLink":"Allowing consumer of HS specified device type for each service (#355)"}},{"before":"45c637e8b13baaaf88093860aa8a39f461a12124","after":"485e6565f12e9f12f179f9aa7c4697b20464e9cd","ref":"refs/heads/master","pushedAt":"2024-03-29T17:31:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"szmyd","name":"Brian Szmyd","path":"/szmyd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2677746?s=80&v=4"},"commit":{"message":"Do not setup tmate session unless we are testing.","shortMessageHtmlLink":"Do not setup tmate session unless we are testing."}},{"before":"12b97c197f6cba330a10e61da2ab1e00bd432122","after":"45c637e8b13baaaf88093860aa8a39f461a12124","ref":"refs/heads/master","pushedAt":"2024-03-27T17:43:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hkadayam","name":"Harihara Kadayam","path":"/hkadayam","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14349812?s=80&v=4"},"commit":{"message":"Error handling on pre-append et al. (#361)\n\nMajor changes in this PR includes:\r\n\r\n* At present, there is no provision for consumer of replication to prevent the follower\r\nfrom appending the logs. In case of linked data, its possible for followers to not have\r\nenough space among other reasons to reject. This PR introduces pre-append and allow\r\nconsumers to return back error, which then again retried later. Not just allocation of\r\nblocks for indirect data, but also this PR ensures that data is pulled, before accepting\r\npre-append on the follower that, there is no network related failures before writing the\r\nlog entry.\r\n\r\n* In case of log entry has arrived first in raft channel, before data channel, at present\r\nwe start the timer then to wait. Instead this PR starts a global reaper thread, which wakes\r\nup often to look for any pending fetches and thus data path, just put the fetch request to\r\nthe queue. This avoids expensive timer creation in data path.\r\n\r\n* Added several robustness, error injection test cases to ensure stability under all conditions.\r\n\r\n* These tests, exposes quiet a few errors in-terms of deadlocks between fetch, wait and grpc client\r\nthreads. Fixed all of them.\r\n\r\n* Streamlined the test_raft_repl_dev testing, to be able to write the tests seamlessly.","shortMessageHtmlLink":"Error handling on pre-append et al. (#361)"}},{"before":"f3388648e0f502d832b32e430146bce910c26321","after":"12b97c197f6cba330a10e61da2ab1e00bd432122","ref":"refs/heads/master","pushedAt":"2024-03-27T01:29:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"xiaoxichen","name":"Xiaoxi Chen","path":"/xiaoxichen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1584218?s=80&v=4"},"commit":{"message":"Bump up dependency (#360)\n\nThis is needed to allow us to have successful build for HS and pining HS on 5.X in HO and unblock SM.\r\n\r\nSigned-off-by: Xiaoxi Chen ","shortMessageHtmlLink":"Bump up dependency (#360)"}},{"before":"44519c83870de65e4ea547de2b70a817cee75a3f","after":"c6630a2a97f24168faa26c7445215c788f8e3395","ref":"refs/heads/thin_provisioning","pushedAt":"2024-03-26T17:49:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"shosseinimotlagh","name":"Mehdi Hosseini","path":"/shosseinimotlagh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116847813?s=80&v=4"},"commit":{"message":"SDSTOR-13146 : Update AM's /api/v1/utilization endpoint (#362)","shortMessageHtmlLink":"SDSTOR-13146 : Update AM's /api/v1/utilization endpoint (#362)"}},{"before":"2c500c573fa2c5733218e0cbdd44226fb3e6504f","after":"f3388648e0f502d832b32e430146bce910c26321","ref":"refs/heads/master","pushedAt":"2024-03-21T19:46:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"sanebay","name":"Sanal","path":"/sanebay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/129343854?s=80&v=4"},"commit":{"message":"Fix asan stack use after return error. (#359)","shortMessageHtmlLink":"Fix asan stack use after return error. (#359)"}},{"before":"63bc941a0a8497c4ab586cb4b84a0b4a5a873fc9","after":"44519c83870de65e4ea547de2b70a817cee75a3f","ref":"refs/heads/thin_provisioning","pushedAt":"2024-03-13T22:18:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shosseinimotlagh","name":"Mehdi Hosseini","path":"/shosseinimotlagh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116847813?s=80&v=4"},"commit":{"message":"Update conanfile.py","shortMessageHtmlLink":"Update conanfile.py"}},{"before":"ed3ffae013e7ad917c19e296cae7a103f5b6b077","after":"63bc941a0a8497c4ab586cb4b84a0b4a5a873fc9","ref":"refs/heads/thin_provisioning","pushedAt":"2024-03-13T22:08:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shosseinimotlagh","name":"Mehdi Hosseini","path":"/shosseinimotlagh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116847813?s=80&v=4"},"commit":{"message":"Update conanfile.py","shortMessageHtmlLink":"Update conanfile.py"}},{"before":"b3d7e283b931c67cd1e0e294067cdf04bcb08300","after":"ed3ffae013e7ad917c19e296cae7a103f5b6b077","ref":"refs/heads/thin_provisioning","pushedAt":"2024-03-13T00:16:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"shosseinimotlagh","name":"Mehdi Hosseini","path":"/shosseinimotlagh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116847813?s=80&v=4"},"commit":{"message":"Thin provisioning : Enable zero detecting for requests (#349)\n\n* Enable zero detecting for requests\r\nAdded a manual io job test","shortMessageHtmlLink":"Thin provisioning : Enable zero detecting for requests (#349)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAESjRQdQA","startCursor":null,"endCursor":null}},"title":"Activity · eBay/HomeStore"}