{"id":"https://openalex.org/W2888262223","doi":"https://doi.org/10.1145/3238147.3238198","title":"PFix: fixing concurrency bugs based on memory access patterns","display_name":"PFix: fixing concurrency bugs based on memory access patterns","publication_year":2018,"publication_date":"2018-08-20","ids":{"openalex":"https://openalex.org/W2888262223","doi":"https://doi.org/10.1145/3238147.3238198","mag":"2888262223"},"language":"en","primary_location":{"id":"doi:10.1145/3238147.3238198","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3238147.3238198","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering","raw_type":"proceedings-article"},"type":"conference-paper","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/A5085332063","display_name":"Huarui Lin","orcid":null},"institutions":[{"id":"https://openalex.org/I162868743","display_name":"Tianjin University","ror":"https://ror.org/012tb2g32","country_code":"CN","type":"education","lineage":["https://openalex.org/I162868743"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Huarui Lin","raw_affiliation_strings":["Tianjin University, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Tianjin University, China","institution_ids":["https://openalex.org/I162868743"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5100707447","display_name":"Zan Wang","orcid":"https://orcid.org/0000-0001-6173-8170"},"institutions":[{"id":"https://openalex.org/I162868743","display_name":"Tianjin University","ror":"https://ror.org/012tb2g32","country_code":"CN","type":"education","lineage":["https://openalex.org/I162868743"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Zan Wang","raw_affiliation_strings":["Tianjin University, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Tianjin University, China","institution_ids":["https://openalex.org/I162868743"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5100319073","display_name":"Shuang Liu","orcid":"https://orcid.org/0000-0001-8766-7235"},"institutions":[{"id":"https://openalex.org/I162868743","display_name":"Tianjin University","ror":"https://ror.org/012tb2g32","country_code":"CN","type":"education","lineage":["https://openalex.org/I162868743"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Shuang Liu","raw_affiliation_strings":["Tianjin University, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Tianjin University, China","institution_ids":["https://openalex.org/I162868743"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5100429004","display_name":"Jun Sun","orcid":"https://orcid.org/0000-0002-3545-1392"},"institutions":[{"id":"https://openalex.org/I152815399","display_name":"Singapore University of Technology and Design","ror":"https://ror.org/05j6fvn87","country_code":"SG","type":"education","lineage":["https://openalex.org/I152815399"]}],"countries":["SG"],"is_corresponding":false,"raw_author_name":"Jun Sun","raw_affiliation_strings":["Singapore University of Technology and Design, Singapore"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Singapore University of Technology and Design, Singapore","institution_ids":["https://openalex.org/I152815399"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5017882917","display_name":"Dongdi Zhang","orcid":"https://orcid.org/0000-0002-2715-8591"},"institutions":[{"id":"https://openalex.org/I162868743","display_name":"Tianjin University","ror":"https://ror.org/012tb2g32","country_code":"CN","type":"education","lineage":["https://openalex.org/I162868743"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Dongdi Zhang","raw_affiliation_strings":["Tianjin University, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Tianjin University, China","institution_ids":["https://openalex.org/I162868743"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5054736761","display_name":"Guangning Wei","orcid":null},"institutions":[{"id":"https://openalex.org/I162868743","display_name":"Tianjin University","ror":"https://ror.org/012tb2g32","country_code":"CN","type":"education","lineage":["https://openalex.org/I162868743"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Guangning Wei","raw_affiliation_strings":["Tianjin University, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Tianjin University, China","institution_ids":["https://openalex.org/I162868743"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":22,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"589","last_page":"600"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T12127","display_name":"Software System Performance and Reliability","score":0.9990000128746033,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9983000159263611,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/computer-science","display_name":"Computer science","score":0.8673838973045349},{"id":"https://openalex.org/keywords/concurrency","display_name":"Concurrency","score":0.8587512969970703},{"id":"https://openalex.org/keywords/concurrent-object-oriented-programming","display_name":"Concurrent object-oriented programming","score":0.6439012885093689},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.5704215168952942},{"id":"https://openalex.org/keywords/multiversion-concurrency-control","display_name":"Multiversion concurrency control","score":0.5685709118843079},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5418572425842285},{"id":"https://openalex.org/keywords/non-lock-concurrency-control","display_name":"Non-lock concurrency control","score":0.48349741101264954},{"id":"https://openalex.org/keywords/isolation","display_name":"Isolation (microbiology)","score":0.4445136785507202},{"id":"https://openalex.org/keywords/optimistic-concurrency-control","display_name":"Optimistic concurrency control","score":0.43797844648361206},{"id":"https://openalex.org/keywords/concurrency-control","display_name":"Concurrency control","score":0.38582903146743774},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.37057703733444214},{"id":"https://openalex.org/keywords/distributed-concurrency-control","display_name":"Distributed concurrency control","score":0.19388577342033386},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.1307429075241089}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8673838973045349},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.8587512969970703},{"id":"https://openalex.org/C3701939","wikidata":"https://www.wikidata.org/wiki/Q5159109","display_name":"Concurrent object-oriented programming","level":5,"score":0.6439012885093689},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.5704215168952942},{"id":"https://openalex.org/C108744092","wikidata":"https://www.wikidata.org/wiki/Q93695","display_name":"Multiversion concurrency control","level":5,"score":0.5685709118843079},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5418572425842285},{"id":"https://openalex.org/C61912525","wikidata":"https://www.wikidata.org/wiki/Q7048952","display_name":"Non-lock concurrency control","level":5,"score":0.48349741101264954},{"id":"https://openalex.org/C2775941552","wikidata":"https://www.wikidata.org/wiki/Q25212305","display_name":"Isolation (microbiology)","level":2,"score":0.4445136785507202},{"id":"https://openalex.org/C79240183","wikidata":"https://www.wikidata.org/wiki/Q1779327","display_name":"Optimistic concurrency control","level":5,"score":0.43797844648361206},{"id":"https://openalex.org/C84511453","wikidata":"https://www.wikidata.org/wiki/Q2914952","display_name":"Concurrency control","level":3,"score":0.38582903146743774},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.37057703733444214},{"id":"https://openalex.org/C208087996","wikidata":"https://www.wikidata.org/wiki/Q5283142","display_name":"Distributed concurrency control","level":4,"score":0.19388577342033386},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.1307429075241089},{"id":"https://openalex.org/C150762246","wikidata":"https://www.wikidata.org/wiki/Q4354073","display_name":"Reactive programming","level":4,"score":0.0},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.0},{"id":"https://openalex.org/C75949130","wikidata":"https://www.wikidata.org/wiki/Q848010","display_name":"Database transaction","level":2,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C89423630","wikidata":"https://www.wikidata.org/wiki/Q7193","display_name":"Microbiology","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3238147.3238198","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3238147.3238198","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering","raw_type":"proceedings-article"},{"id":"pmh:oai:ink.library.smu.edu.sg:sis_research-5658","is_oa":false,"landing_page_url":"https://ink.library.smu.edu.sg/sis_research/4655","pdf_url":null,"source":{"id":"https://openalex.org/S4306401925","display_name":"Singapore Management University Institutional Knowledge (InK) (Singapore Management University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I79891267","host_organization_name":"Singapore Management University","host_organization_lineage":["https://openalex.org/I79891267"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"https://doi.org/10.1145/3238147.3238198","raw_type":"Conference Proceeding Article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320320751","display_name":"Ministry of Education - Singapore","ror":"https://ror.org/01kcva023"},{"id":"https://openalex.org/F4320321001","display_name":"National Natural Science Foundation of China","ror":"https://ror.org/01h0zpd94"},{"id":"https://openalex.org/F4320325902","display_name":"Beijing Municipal Science and Technology Commission","ror":null},{"id":"https://openalex.org/F4320326190","display_name":"Tianjin Science and Technology Committee","ror":null}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":54,"referenced_works":["https://openalex.org/W125251596","https://openalex.org/W195522912","https://openalex.org/W1452568986","https://openalex.org/W1873898332","https://openalex.org/W1967959506","https://openalex.org/W1971137495","https://openalex.org/W1977476643","https://openalex.org/W1993635974","https://openalex.org/W1996109622","https://openalex.org/W2012380206","https://openalex.org/W2013560272","https://openalex.org/W2019062800","https://openalex.org/W2024507356","https://openalex.org/W2040060046","https://openalex.org/W2046368282","https://openalex.org/W2057998500","https://openalex.org/W2065675749","https://openalex.org/W2067967561","https://openalex.org/W2091543666","https://openalex.org/W2093755302","https://openalex.org/W2100627043","https://openalex.org/W2101819268","https://openalex.org/W2104831091","https://openalex.org/W2106858176","https://openalex.org/W2111413199","https://openalex.org/W2112401557","https://openalex.org/W2126529005","https://openalex.org/W2130836596","https://openalex.org/W2135395375","https://openalex.org/W2135954168","https://openalex.org/W2137270184","https://openalex.org/W2137422315","https://openalex.org/W2137955133","https://openalex.org/W2145804665","https://openalex.org/W2152008376","https://openalex.org/W2153418968","https://openalex.org/W2159856414","https://openalex.org/W2160978874","https://openalex.org/W2162376048","https://openalex.org/W2165325822","https://openalex.org/W2166841005","https://openalex.org/W2169241426","https://openalex.org/W2380139570","https://openalex.org/W2539721238","https://openalex.org/W2546468634","https://openalex.org/W2547616304","https://openalex.org/W2578160636","https://openalex.org/W2620081107","https://openalex.org/W2740343870","https://openalex.org/W3006516349","https://openalex.org/W3008339000","https://openalex.org/W4214873726","https://openalex.org/W4233319527","https://openalex.org/W4254006441"],"related_works":["https://openalex.org/W2083731697","https://openalex.org/W2367892034","https://openalex.org/W2363262531","https://openalex.org/W2280852004","https://openalex.org/W2380952560","https://openalex.org/W1972150097","https://openalex.org/W3005875561","https://openalex.org/W2164743841","https://openalex.org/W2353507796","https://openalex.org/W45321467"],"abstract_inverted_index":{"Concurrency":[0],"bugs":[1,66,147,168],"of":[2,89,101,144,155,176],"a":[3,130,142],"multi-threaded":[4],"program":[5,29,108],"may":[6],"only":[7,19,173],"manifest":[8],"with":[9,30,86],"certain":[10],"scheduling,":[11],"i.e.,":[12],"they":[13],"are":[14,17,37,84,121,149],"heisenbugs":[15],"which":[16,83,134,160],"observed":[18],"from":[20,71],"time":[21,23],"to":[22,40,49,55,62,141,151],"if":[24],"we":[25,45,78,105],"execute":[26],"the":[27,31,87,90,97,102,107,111,116,162],"same":[28,32],"input":[33],"multiple":[34],"times.":[35],"They":[36],"notoriously":[38],"hard":[39],"fix.":[41],"In":[42,157],"this":[43],"work,":[44],"propose":[46],"an":[47],"approach":[48,128],"automatically":[50,79,152],"fix":[51,64,106,153,174],"concurrency":[52,65,146,167],"bugs.":[53],"Compared":[54],"previous":[56],"approaches,":[57],"our":[58,127],"key":[59],"idea":[60],"is":[61,96,161],"systematically":[63],"by":[67,109],"inferring":[68],"locking":[69,99,112],"policies":[70],"failure":[72,117],"inducing":[73,118],"memory-access":[74,81,119],"patterns.":[75],"That":[76],"is,":[77],"identify":[80],"patterns":[82,120],"correlated":[85],"manifestation":[88],"bug,":[91],"and":[92,148],"then":[93],"conjecture":[94],"what":[95],"intended":[98],"policy":[100,113],"program.":[103],"Afterwards,":[104],"implementing":[110],"so":[114],"that":[115],"made":[122],"impossible.":[123],"We":[124,138],"have":[125],"implemented":[126],"in":[129,169],"toolkit":[131],"called":[132],"PFix":[133,140],"supports":[135],"Java":[136,170],"programs.":[137],"applied":[139],"set":[143],"23":[145],"able":[150],"19":[154],"them.":[156],"comparison,":[158],"Grail":[159],"state-of-the-art":[163],"tool":[164],"for":[165],"fixing":[166],"programs":[171],"can":[172],"3":[175],"them":[177],"correctly.":[178]},"counts_by_year":[{"year":2026,"cited_by_count":3},{"year":2025,"cited_by_count":2},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":5},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":4},{"year":2019,"cited_by_count":4}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
