Write a Blog >>
Mon 19 Jun 2017 14:30 - 15:00 at Vertex WS218 - Afternoon Chair(s): Christian Hammer

Modern web applications are written in an event- driven style, in which event handlers execute asynchronously in response to user or system events. The nondeterminism arising from this programming style can lead to pernicious errors. Recent work focuses on detecting event races and classifying them as harmful or harmless. However, since modifying the source code to prevent harmful races can be a difficult and error-prone task, it may be preferable to steer away from the bad executions. In this paper, we present a technique for automated repair of event race errors in JavaScript web applications. Our approach relies on an event controller that restricts event handler scheduling in the browser according to a specified repair policy, by intercepting and carefully postponing or discarding selected events. We have implemented the technique in a tool called EventRaceCommander, which relies entirely on source code instrumentation, and evaluated it by repairing more than 100 event race errors that occur in the web applications from the largest 20 of the Fortune 500 companies. Our results show that application-independent repair policies usually suffice to repair event race errors without excessive negative impact on performance or user experience, though application-specific repair policies that target specific event races are sometimes desirable.

Frank Tip will be joining Northeastern University as a Professor in Fall 2016. He is currently a Senior Principal Engineer at Samsung Research America in Mountain View, California and an Adjunct Professor at the David R. Cheriton School of Computer Science at the University of Waterloo. Previously, he was a Professor and Cheriton Research Chair in the David R. Cheriton School of Computer Science at the University of Waterloo (2012-2014), and a Research Staff Member and Manager at the Software Technology Department at the IBM T.J. Watson Research Center (1995-2012). He received his PhD in 1995 from the University of Amsterdam.

Mon 19 Jun

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

14:00 - 15:30
AfternoonJSTools at Vertex WS218
Chair(s): Christian Hammer University of Potsdam
14:00
30m
Talk
BCoz: Effective Performance Debugging for Web Applications
JSTools
John Vilk University of Massachusetts, Amherst
File Attached
14:30
30m
Talk
Repairing Event Race Errors by Controlling Nondeterminism
JSTools
Frank Tip Northeastern University
15:00
30m
Talk
Static Analysis of CommonJS Modules
JSTools