Automatic runtime recovery via error handler synthesis

Software systems are often subject to unexpected runtime errors. Automatic runtime recovery (ARR) techniques aim to recover them from erroneous states and maintain them functional in the field. This paper proposes Ares, a novel, practical approach for ARR. Our key insight is leveraging a system'...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering s. 684 - 695
Hlavní autoři: Tianxiao Gu, Chengnian Sun, Xiaoxing Ma, Jian Lu, Zhendong Su
Médium: Konferenční příspěvek
Jazyk:angličtina
Vydáno: ACM 01.09.2016
Témata:
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Abstract Software systems are often subject to unexpected runtime errors. Automatic runtime recovery (ARR) techniques aim to recover them from erroneous states and maintain them functional in the field. This paper proposes Ares, a novel, practical approach for ARR. Our key insight is leveraging a system's inherent error handling support to recover from unexpected errors. To this end, we synthesize error handlers in two ways: error transformation and early return. We also equip Ares with a lightweight in-vivo testing infrastructure to select the promising synthesis method and avoid potentially dangerous error handlers. Unlike existing ARR techniques with heavyweight mechanisms (e.g., checkpoint-restart and runtime monitoring), our approach expands the intrinsic capability of runtime error resilience in software systems to handle unexpected errors. Ares's lightweight mechanism makes it practical and easy to be integrated into production environments. We have implemented Ares on top of both the Java HotSpot VM and Android ART, and applied it to recover from 52 real-world bugs. The results are promising - Ares successfully recovers from 39 of them and incurs negligible overhead.
AbstractList Software systems are often subject to unexpected runtime errors. Automatic runtime recovery (ARR) techniques aim to recover them from erroneous states and maintain them functional in the field. This paper proposes Ares, a novel, practical approach for ARR. Our key insight is leveraging a system's inherent error handling support to recover from unexpected errors. To this end, we synthesize error handlers in two ways: error transformation and early return. We also equip Ares with a lightweight in-vivo testing infrastructure to select the promising synthesis method and avoid potentially dangerous error handlers. Unlike existing ARR techniques with heavyweight mechanisms (e.g., checkpoint-restart and runtime monitoring), our approach expands the intrinsic capability of runtime error resilience in software systems to handle unexpected errors. Ares's lightweight mechanism makes it practical and easy to be integrated into production environments. We have implemented Ares on top of both the Java HotSpot VM and Android ART, and applied it to recover from 52 real-world bugs. The results are promising - Ares successfully recovers from 39 of them and incurs negligible overhead.
Author Xiaoxing Ma
Zhendong Su
Tianxiao Gu
Chengnian Sun
Jian Lu
Author_xml – sequence: 1
  surname: Tianxiao Gu
  fullname: Tianxiao Gu
  email: tianxiao.gu@gmail.com
  organization: Dept. of Comput. Sci. & Technol., Nanjing Univ., Nanjing, China
– sequence: 2
  surname: Chengnian Sun
  fullname: Chengnian Sun
  email: cnsun@ucdavis.edu
  organization: Dept. of Comput. Sci., Univ. of California, Davis, Davis, CA, USA
– sequence: 3
  surname: Xiaoxing Ma
  fullname: Xiaoxing Ma
  email: xxm@nju.edu.cn
  organization: Dept. of Comput. Sci. & Technol., Nanjing Univ., Nanjing, China
– sequence: 4
  surname: Jian Lu
  fullname: Jian Lu
  email: lj@nju.edu.cn
  organization: Dept. of Comput. Sci. & Technol., Nanjing Univ., Nanjing, China
– sequence: 5
  surname: Zhendong Su
  fullname: Zhendong Su
  email: su@cs.ucdavis.edu
  organization: Dept. of Comput. Sci., Univ. of California, Davis, Davis, CA, USA
BookMark eNotj81KAzEURiMoqHXWLtzkBaYm9yaTZFmKf1Bwo-tym7lDI50ZSaaFeXsrujqLDw7fuRWXwziwEPdaLbU29hGCU-Ca5S-xUReiCs6fB4XojbXXoirlSykF0AQEuBHN6jiNPU0pynwcptSzzBzHE-dZnhJJznnMck9De-AsyzxMey6p3Imrjg6Fq38uxOfz08f6td68v7ytV5uawLipDoo9MFGMUWu0O4McWgvgOs0NYhfIkz2fC9S5XYfUthhJBW3QGGB2uBAPf97EzNvvnHrK89ZZD_6c9APLQUaN
ContentType Conference Proceeding
DBID 6IE
6IL
CBEJK
RIE
RIL
DOI 10.1145/2970276.2970360
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume
IEEE Xplore All Conference Proceedings
IEEE Electronic Library (IEL)
IEEE Proceedings Order Plans (POP All) 1998-Present
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
EISBN 9781450338455
1450338453
EndPage 695
ExternalDocumentID 7582803
Genre orig-research
GroupedDBID 6IE
6IL
ACM
ALMA_UNASSIGNED_HOLDINGS
APO
CBEJK
GUFHI
LHSKQ
RIE
RIL
ID FETCH-LOGICAL-a247t-90e82eaaccc1135b43e9d5227f1e633f9a8a55039af7bf3add3ca09143442ee73
IEDL.DBID RIE
ISICitedReferencesCount 17
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000390237000067&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
IngestDate Wed Aug 27 01:41:32 EDT 2025
IsPeerReviewed false
IsScholarly false
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-a247t-90e82eaaccc1135b43e9d5227f1e633f9a8a55039af7bf3add3ca09143442ee73
PageCount 12
ParticipantIDs ieee_primary_7582803
PublicationCentury 2000
PublicationDate 2016-Sept.
PublicationDateYYYYMMDD 2016-09-01
PublicationDate_xml – month: 09
  year: 2016
  text: 2016-Sept.
PublicationDecade 2010
PublicationTitle Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering
PublicationTitleAbbrev ASE
PublicationYear 2016
Publisher ACM
Publisher_xml – name: ACM
SSID ssj0002269322
Score 1.7291846
Snippet Software systems are often subject to unexpected runtime errors. Automatic runtime recovery (ARR) techniques aim to recover them from erroneous states and...
SourceID ieee
SourceType Publisher
StartPage 684
SubjectTerms Androids
automatic runtime recovery
Computer bugs
exception handling
Java
JVM
Resilience
Runtime
Software systems
Testing
Title Automatic runtime recovery via error handler synthesis
URI https://ieeexplore.ieee.org/document/7582803
WOSCitedRecordID wos000390237000067&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV09T8MwELUKYmAC1CK-5YGRtI3txPGIEBUDqjoA6lZd7LOUgQQlaaX-e85JVRhYmGx5sGXZ8nvnu3vH2D0xAgCX-0iAyiNCvDwCnzp6DD1k3mFmu1qHH696Ps-WS7MYsId9LgwidsFnOA7dzpfvKrsOX2UTHXw8QdrzQOu0z9Xa_6cQjSAqInbqPbFKJsJosrnScWhlkKD8VT6lQ4_Zyf_WPWWjnzQ8vtgDzBkbYDlk6eO6rTqdVR5EA4pP5MGopRu55ZsCONZ1VfNePKHmzbYkhtcUzYi9z57fnl6iXfGDCITSbWSmmAkEsNbGsUxyJdE4Ikvax5hK6Q1kQNaFNOB17iU9U9ICgb-SSglELc_ZYVmVeME4YBJrPcVgrahc0DyEUM7ZhKY2Wkwv2TDsefXV61usdtu9-nv4mh0TaUj7OKsbdtjWa7xlR3bTFk191x3KN7KGj1A
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV09T8MwELUqQIIJUIv4xgMjaRvbieMRIaoiStWhoG6VY5-lDCQoSSv133NOo8LAwmTLgy3Llt873907Qu6REWhtUxcwLdIAES8NtIstPoZOJ85CYppahx8TOZ0mi4WadcjDLhcGAJrgM-j7buPLt4VZ-a-ygfQ-Hi_tue8rZ7XZWrsfFSQSSEZYq98TimjAlESrK-77lnsRyl8FVBr8GB3_b-UT0vtJxKOzHcSckg7kXRI_ruqiUVqlXjYg-wTqzVq8kxu6zjSFsixKupVPKGm1yZHjVVnVI--j5_nTOGjLHwSaCVkHaggJA62NMWHIo1RwUBbpknQhxJw7pRON9gVX2snUcXyouNEI_4ILwQAkPyN7eZHDOaEaolDKIXh7RaQM50GMstZEOLWSbHhBun7Py6-twsWy3e7l38N35HA8f5ssJy_T1ytyhBQi3kZdXZO9ulzBDTkw6zqrytvmgL4BXP6SmQ
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=Proceedings+of+the+31st+IEEE%2FACM+International+Conference+on+Automated+Software+Engineering&rft.atitle=Automatic+runtime+recovery+via+error+handler+synthesis&rft.au=Tianxiao+Gu&rft.au=Chengnian+Sun&rft.au=Xiaoxing+Ma&rft.au=Jian+Lu&rft.date=2016-09-01&rft.pub=ACM&rft.spage=684&rft.epage=695&rft_id=info:doi/10.1145%2F2970276.2970360&rft.externalDocID=7582803