{"id":"https://openalex.org/W4392265921","doi":"https://doi.org/10.1109/cgo57630.2024.10444835","title":"Unveiling and Vanquishing Goroutine Leaks in Enterprise Microservices: A Dynamic Analysis Approach","display_name":"Unveiling and Vanquishing Goroutine Leaks in Enterprise Microservices: A Dynamic Analysis Approach","publication_year":2024,"publication_date":"2024-02-28","ids":{"openalex":"https://openalex.org/W4392265921","doi":"https://doi.org/10.1109/cgo57630.2024.10444835"},"language":"en","primary_location":{"id":"doi:10.1109/cgo57630.2024.10444835","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo57630.2024.10444835","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2024 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5035782346","display_name":"Georgian-Vlad Saioc","orcid":null},"institutions":[{"id":"https://openalex.org/I204337017","display_name":"Aarhus University","ror":"https://ror.org/01aj84f44","country_code":"DK","type":"education","lineage":["https://openalex.org/I204337017"]}],"countries":["DK"],"is_corresponding":true,"raw_author_name":"Georgian-Vlad Saioc","raw_affiliation_strings":["Aarhus University, Uber Technologies, Inc.,Aarhus,Denmark","Aarhus University, Uber Technologies, Inc., Aarhus, Denmark"],"affiliations":[{"raw_affiliation_string":"Aarhus University, Uber Technologies, Inc.,Aarhus,Denmark","institution_ids":["https://openalex.org/I204337017"]},{"raw_affiliation_string":"Aarhus University, Uber Technologies, Inc., Aarhus, Denmark","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5093549049","display_name":"Dmitriy Shirchenko","orcid":null},"institutions":[{"id":"https://openalex.org/I2946016260","display_name":"Uber AI (United States)","ror":"https://ror.org/05vm0ed18","country_code":"US","type":"company","lineage":["https://openalex.org/I2946016260"]},{"id":"https://openalex.org/I4210156496","display_name":"Uber AI (United States)","ror":null,"country_code":"US","type":null,"lineage":["https://openalex.org/I4210156496"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Dmitriy Shirchenko","raw_affiliation_strings":["Uber Technologies, Inc.,San Francisco,USA","Uber Technologies, Inc., San Francisco, USA"],"affiliations":[{"raw_affiliation_string":"Uber Technologies, Inc.,San Francisco,USA","institution_ids":["https://openalex.org/I4210156496"]},{"raw_affiliation_string":"Uber Technologies, Inc., San Francisco, USA","institution_ids":["https://openalex.org/I2946016260"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5055733971","display_name":"Milind Chabbi","orcid":"https://orcid.org/0000-0003-1021-7644"},"institutions":[{"id":"https://openalex.org/I4210156496","display_name":"Uber AI (United States)","ror":null,"country_code":"US","type":null,"lineage":["https://openalex.org/I4210156496"]},{"id":"https://openalex.org/I2946016260","display_name":"Uber AI (United States)","ror":"https://ror.org/05vm0ed18","country_code":"US","type":"company","lineage":["https://openalex.org/I2946016260"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Milind Chabbi","raw_affiliation_strings":["Uber Technologies, Inc.,San Francisco,USA","Uber Technologies, Inc., San Francisco, USA"],"affiliations":[{"raw_affiliation_string":"Uber Technologies, Inc.,San Francisco,USA","institution_ids":["https://openalex.org/I4210156496"]},{"raw_affiliation_string":"Uber Technologies, Inc., San Francisco, USA","institution_ids":["https://openalex.org/I2946016260"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5035782346"],"corresponding_institution_ids":["https://openalex.org/I204337017"],"apc_list":null,"apc_paid":null,"fwci":1.4653,"has_fulltext":false,"cited_by_count":4,"citation_normalized_percentile":{"value":0.81431835,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"411","last_page":"422"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.982699990272522,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9713000059127808,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/microservices","display_name":"Microservices","score":0.9507107138633728},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6399698853492737},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.4454440176486969},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.34539222717285156},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.30488321185112},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.24113762378692627},{"id":"https://openalex.org/keywords/cloud-computing","display_name":"Cloud computing","score":0.11983981728553772}],"concepts":[{"id":"https://openalex.org/C2778505942","wikidata":"https://www.wikidata.org/wiki/Q18344624","display_name":"Microservices","level":3,"score":0.9507107138633728},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6399698853492737},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.4454440176486969},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.34539222717285156},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.30488321185112},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.24113762378692627},{"id":"https://openalex.org/C79974875","wikidata":"https://www.wikidata.org/wiki/Q483639","display_name":"Cloud computing","level":2,"score":0.11983981728553772}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1109/cgo57630.2024.10444835","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo57630.2024.10444835","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2024 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"},{"id":"pmh:oai:pure.atira.dk:publications/b590725d-c598-49ce-8561-c1bcea018e6b","is_oa":false,"landing_page_url":"https://pure.au.dk/portal/en/publications/b590725d-c598-49ce-8561-c1bcea018e6b","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Saioc, G-V, Shirchenko, D & Chabbi, M 2024, Unveiling and Vanquishing Goroutine Leaks in Enterprise Microservices: a Dynamic Analysis Approach. in T Grosser, C Dubach, M Steuwer, J Xue, G Ottoni & F M Q Pereira (eds), 2024 IEEE/ACM International Symposium on Code Generation and Optimization (CGO). IEEE, Edinburgh, pp. 411-422, Code Generation and Optimization, Edinburgh, United Kingdom, 02/03/2024. https://doi.org/10.1109/CGO57630.2024.10444835","raw_type":"info:eu-repo/semantics/publishedVersion"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":24,"referenced_works":["https://openalex.org/W1480909796","https://openalex.org/W1943502734","https://openalex.org/W2001478969","https://openalex.org/W2107594432","https://openalex.org/W2113606713","https://openalex.org/W2115309705","https://openalex.org/W2141181087","https://openalex.org/W2149237601","https://openalex.org/W2162989857","https://openalex.org/W2295244175","https://openalex.org/W2516172998","https://openalex.org/W2734941459","https://openalex.org/W2771591873","https://openalex.org/W2888816426","https://openalex.org/W2930652247","https://openalex.org/W3014888290","https://openalex.org/W3105863387","https://openalex.org/W3151741126","https://openalex.org/W3156367898","https://openalex.org/W4206838052","https://openalex.org/W4211008702","https://openalex.org/W4225528709","https://openalex.org/W4313563792","https://openalex.org/W6798275482"],"related_works":["https://openalex.org/W4391375266","https://openalex.org/W2899084033","https://openalex.org/W2748952813","https://openalex.org/W4210334847","https://openalex.org/W3181741639","https://openalex.org/W4367181468","https://openalex.org/W2767473057","https://openalex.org/W4225586032","https://openalex.org/W3003367851","https://openalex.org/W1492892507"],"abstract_inverted_index":{"Go":[0,18,29,44,109],"is":[1,13],"a":[2,14,52,55,60,66,184],"modern":[3],"programming":[4],"language":[5],"gaining":[6],"popularity":[7],"in":[8,17,43,47,103,152,180,183,196,224,233],"enterprise":[9],"microservice":[10],"systems.":[11],"Concurrency":[12],"first-class":[15],"citizen":[16],"with":[19],"lightweight":[20],"\u201cgoroutines\u201d":[21],"as":[22],"the":[23,71,85,93,99,138,166,197,202],"building":[24],"blocks":[25],"of":[26,40,95,107,140,168,204,235],"concurrent":[27],"execution.":[28],"advocates":[30],"message-passing":[31],"to":[32,74,125,154,226],"communicate":[33],"and":[34,81,98,122,136,175,200,217,229],"synchronize":[35],"among":[36],"goroutines.":[37],"Improper":[38],"use":[39],"message":[41,96],"passing":[42,97],"can":[45],"result":[46],"\u201cpartial":[48],"deadlock\u201d":[49],"(interchangeably":[50],"called":[51],"goroutine":[53,73,146,194,220],"leak),":[54],"subtle":[56],"concurrency":[57],"bug":[58],"where":[59],"blocked":[61,72],"sender":[62],"(receiver)":[63],"never":[64],"finds":[65],"corresponding":[67],"receiver":[68],"(sender),":[69],"causing":[70],"leak":[75],"memory,":[76],"via":[77],"its":[78],"call":[79],"stack":[80],"objects":[82],"reachable":[83],"from":[84,149,159],"stack.":[86],"In":[87],"this":[88],"paper,":[89],"we":[90,190,214],"systematically":[91],"study":[92],"prevalence":[94],"resulting":[100],"partial":[101,127,131],"deadlocks":[102,132],"\u224875":[104],"Million":[105],"lines":[106],"Uber's":[108],"monorepo":[110],"hosting":[111],"\u22482500":[112],"microservices.":[113],"We":[114,171],"develop":[115],"two":[116],"lightweight,":[117],"dynamic":[118],"analysis":[119],"tools:":[120],"Goleak":[121,129,189],"LeakProf,":[123],"designed":[124],"identify":[126],"deadlocks.":[128],"detects":[130],"during":[133],"unit":[134],"testing":[135],"prevents":[137],"introduction":[139,203],"new":[141,206],"bugs.":[142],"Conversely,":[143],"LeakProf":[144,213],"uses":[145],"profiles":[147],"obtained":[148],"services":[150],"deployed":[151],"production":[153,237],"pinpoint":[155],"intricate":[156],"bugs":[157],"arising":[158],"complex":[160],"control":[161],"flow,":[162],"unexplored":[163],"interleavings,":[164],"or":[165],"absence":[167],"test":[169],"coverage.":[170],"share":[172],"our":[173,236],"experience":[174],"insights":[176],"deploying":[177],"these":[178],"tools":[179],"developer":[181],"workflows":[182],"large":[185],"industrial":[186],"setting.":[187],"Using":[188,212],"unearthed":[191],"857":[192],"pre-existing":[193],"leaks":[195,207],"legacy":[198],"code":[199],"prevented":[201],"\u2248260":[205],"over":[208],"one":[209],"year":[210],"period.":[211],"found":[215],"24":[216],"fixed":[218],"21":[219],"leaks,":[221],"which":[222],"resulted":[223],"up":[225],"34%":[227],"speedup":[228],"9.2\u00d7":[230],"memory":[231],"reduction":[232],"some":[234],"services.":[238]},"counts_by_year":[{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
