)]}'
{"id":"depot~9293","triplet_id":"depot~canon~I7bf2769b413520bf1e17ceb3f0982f7a61f802ce","project":"depot","branch":"canon","attention_set":{},"removed_from_attention_set":{"1000001":{"account":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"last_update":"2023-09-10 21:32:58.000000000","reason":"Change was abandoned"},"1000085":{"account":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"last_update":"2023-09-10 21:32:58.000000000","reason":"Change was abandoned"},"1000036":{"account":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"last_update":"2023-09-10 19:37:30.000000000","reason":"\u003cGERRIT_ACCOUNT_1000036\u003e replied on the change","reason_account":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"}}},"hashtags":[],"change_id":"I7bf2769b413520bf1e17ceb3f0982f7a61f802ce","subject":"fix(tvix/store/grpc): Use block_in_place to avoid nested async runtimes","status":"ABANDONED","created":"2023-09-10 19:05:52.000000000","updated":"2023-09-10 21:32:58.000000000","total_comment_count":4,"unresolved_comment_count":2,"has_review_started":true,"meta_rev_id":"b9b5d14dc85f72ac4782fd7a91072e5a91f6b5f6","_number":9293,"virtual_id_number":9293,"owner":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"actions":{},"labels":{"Code-Review":{"approved":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"all":[{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"value":2,"date":"2023-09-10 19:37:30.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}],"values":{"-2":"This shall not be merged","-1":"I would prefer this is not merged as is"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me, approved"},"description":"","default_value":0},"Verified":{"approved":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"all":[{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},{"tag":"autogenerated:buildkite~result","value":1,"date":"2023-09-10 19:09:30.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}],"values":{"-1":"Fails"," 0":"No score","+1":"Verified"},"description":"","default_value":0},"Autosubmit":{"all":[{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}],"values":{" 0":"Submit manually","+1":"Submit automatically"},"description":"","default_value":0,"optional":true},"All-Comments-Resolved":{},"Conformant-Commit-Message":{"approved":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"}}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2023-09-10 19:05:53.000000000","updated_by":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"reviewer":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"state":"CC"},{"updated":"2023-09-10 19:09:13.000000000","updated_by":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"reviewer":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"state":"REVIEWER"},{"updated":"2023-09-10 19:09:13.000000000","updated_by":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"reviewer":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"state":"REVIEWER"},{"updated":"2023-09-10 19:09:30.000000000","updated_by":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"reviewer":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"1d813195d866bb73657ba6ccca6d2a7221042db0","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"date":"2023-09-10 19:05:52.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"a65d59af455dae3a7224f4a82d8d24ad286c1572","tag":"autogenerated:buildkite~trigger","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2023-09-10 19:05:53.000000000","message":"Patch Set 1:\n\nStarted build for patchset #1 on: https://buildkite.com/tvl/depot/builds/26433","accounts_in_message":[],"_revision_number":1},{"id":"82f987e5e2877e930d9ebf704da2612c35738462","tag":"autogenerated:gerrit:code-owners:addReviewer","author":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"date":"2023-09-10 19:09:13.000000000","message":"\u003cGERRIT_ACCOUNT_1000036\u003e, who was added as reviewer owns the following files:\n* tvix/store/src/blobservice/dumb_seeker.rs\n* tvix/store/src/blobservice/grpc.rs\n\n\u003cGERRIT_ACCOUNT_1000001\u003e, who was added as reviewer owns the following files:\n* tvix/store/src/blobservice/dumb_seeker.rs\n* tvix/store/src/blobservice/grpc.rs\n","accounts_in_message":[{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"}],"_revision_number":1},{"id":"71060279120bc607dfd87cd84e772095f1c30d10","tag":"autogenerated:buildkite~result","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2023-09-10 19:09:30.000000000","message":"Patch Set 1: Verified+1\n\nBuild of patchset 1 passed: https://buildkite.com/tvl/depot/builds/26433","accounts_in_message":[],"_revision_number":1},{"id":"300eb3b9f7a6d5e334ef6ed0233ac45f5ac80c60","author":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"date":"2023-09-10 19:10:10.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"ebb1d6e1ed360d96f0d68b078e2c8138d65e95c4","author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"date":"2023-09-10 19:37:30.000000000","message":"Patch Set 1: Code-Review+2\n\n(1 comment)\n\nBy voting Code-Review+2 the following files are now code-owner approved by \u003cGERRIT_ACCOUNT_1000036\u003e:\n* tvix/store/src/blobservice/dumb_seeker.rs\n* tvix/store/src/blobservice/grpc.rs\n","accounts_in_message":[{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"}],"_revision_number":1},{"id":"fb7e7a4ca18cef26914f6edf8fde587da8f7ae84","author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"date":"2023-09-10 19:38:26.000000000","message":"Patch Set 1:\n\n(2 comments)","accounts_in_message":[],"_revision_number":1},{"id":"b9b5d14dc85f72ac4782fd7a91072e5a91f6b5f6","tag":"autogenerated:gerrit:abandon","author":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"date":"2023-09-10 21:32:58.000000000","message":"Abandoned\n\nI did some more pondering, I think a better approach is to use spawn_blocking in the proto gRPC wrapper implementation, which is the place where we\u0027re calling from async into sync code. The proper thing to do there is to use spawn_blocking, which also happens to fix this issue.","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"7fac2400e6ceffa2091534f5c6ecf477aee1c4a8","revisions":{"7fac2400e6ceffa2091534f5c6ecf477aee1c4a8":{"kind":"REWORK","_number":1,"created":"2023-09-10 19:05:52.000000000","uploader":{"_account_id":1000085,"name":"Connor Brewster","display_name":"cbrewster","email":"cbrewster@hey.com","username":"cbrewster"},"ref":"refs/changes/93/9293/1","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/93/9293/1","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/93/9293/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/93/9293/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/93/9293/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/93/9293/1"}}},"commit":{"parents":[{"commit":"8c53ab531018d390fcea95f44c63f3a643a8d17d","subject":"refactor(tvix/website): remove unused structuredData","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d8c53ab531018d390fcea95f44c63f3a643a8d17d"}]}],"author":{"name":"Connor Brewster","email":"cbrewster@hey.com","date":"2023-09-10 17:58:11.000000000","tz":-300},"committer":{"name":"Connor Brewster","email":"cbrewster@hey.com","date":"2023-09-10 19:05:49.000000000","tz":-300},"subject":"fix(tvix/store/grpc): Use block_in_place to avoid nested async runtimes","message":"fix(tvix/store/grpc): Use block_in_place to avoid nested async runtimes\n\nThe BlobService trait is sync Rust, but the gRPC client is async so\nwe\u0027re using `block_on` to call async code from sync code. However, the\ndaemon starts in an async runtime, so we end up calling `block_on` while\ninside an async runtime which causes a panic.\n\nAs a quick workaround, we can use `block_in_place` which will force any\nasync tasks on the thread to move to a different thread which makes it\nsafe to spawn a new async runtime on the current thread with `block_on`.\n\nA better solution would be to make the `BlobService` trait async so we\ndon\u0027t have to go from async-\u003esync-\u003easync.\n\nChange-Id: I7bf2769b413520bf1e17ceb3f0982f7a61f802ce\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7fac2400e6ceffa2091534f5c6ecf477aee1c4a8"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7fac2400e6ceffa2091534f5c6ecf477aee1c4a8"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"8c53ab531018d390fcea95f44c63f3a643a8d17d","is_merged_in_target_branch":true,"change_id":"I2445b977c5bed3e2d4b90e8ad81119d316b29b50","change_number":9281,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
