ICSE 2024
Fri 12 - Sun 21 April 2024 Lisbon, Portugal
Fri 19 Apr 2024 14:00 - 14:15 at Fernando Pessoa - Testing: various bug types 3 Chair(s): Fernando Brito e Abreu

Graph Database Management Systems (GDBMS), which utilize graph models for data storage and execute queries via graph traversals, have seen ubiquitous usage in real-world scenarios such as recommendation systems, knowledge graphs, and social networks.

Much like Relational Database Management Systems (RDBMS), GDBMS are not immune to bugs. These bugs typically manifest as logic errors that yield incorrect results (e.g., omitting a node that should be included), performance bugs that lead to sub-optimal performance (e.g., long execution time caused by redundant graph scanning), and exception issues (e.g., system crashes or missing exceptions).

This paper adapts \textit{Equivalent Query Rewriting (EQR)}, a high-level, widely applicable concept, to GDBMS testing. Its core idea is to rewrite a GDBMS query into equivalent ones that trigger distinct query plans, and check whether they exhibit discrepancies in system behaviors. To facilitate the realization of EQR, we propose a general concept called \textit{Abstract Syntax Graph (ASG)}, which embeds the semantics of a query in the paths of a graph. Given a base query, an ASG will be constructed and then an equivalent query can be generated by finding paths collectively carrying the complete semantics of the base query. To this end, we further design \textit{Random Walk Covering (RWC)}, a simple yet effective path covering algorithm.

As a practical implementation of these ideas, we develop a tool \textit{GRev}, which has successfully detected 22 previously unknown bugs across $5$ popular GDBMS, with 12 of them being confirmed. In particular, 14 of the detected bugs are related to improper implementation of graph data retrieval in GDBMS, which is challenging to identify for existing techniques.

Fri 19 Apr

Displayed time zone: Lisbon change

14:00 - 15:30
14:00
15m
Talk
Testing Graph Database Systems via Equivalent Query Rewriting
Research Track
Qiuyang Mang The Chinese University of Hong Kong, Shenzhen, Aoyang Fang Chinese University of Hong Kong, Shenzhen, BoXi Yu The Chinese University of Hong Kong, Shenzhen, Hanfei Chen The Chinese University of Hong Kong, Shenzhen, Pinjia He Chinese University of Hong Kong, Shenzhen
14:15
15m
Talk
ROSInfer: Statically Inferring Behavioral Component Models for ROS-based Robotics Systems
Research Track
Tobias Dürschmid Carnegie Mellon University, USA, Christopher Steven Timperley Carnegie Mellon University, David Garlan Carnegie Mellon University, Claire Le Goues Carnegie Mellon University
DOI
14:30
15m
Talk
Finding XPath Bugs in XML Document Processors via Differential Testing
Research Track
Shuxin Li Southern University of Science and Technology, Manuel Rigger National University of Singapore
14:45
15m
Talk
Sedar: Obtaining High-Quality Seeds for DBMS Fuzzing via Cross-DBMS SQL Transfer
Research Track
Jingzhou Fu School of Software, Tsinghua University, Jie Liang , Zhiyong Wu Tsinghua University, China, Yu Jiang Tsinghua University
15:00
15m
Talk
Automatically Detecting Reflow Accessibility Issues in Responsive Web Pages
Research Track
Paul T. Chiou University of Southern California, Robert Winn University of Southern California, Ali S. Alotaibi University of Southern California, William G.J. Halfond University of Southern California
Media Attached
15:15
7m
Talk
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Demonstrations
Sajad Khatiri USI-Lugnao & Zurich University of Applied Sciences, Sebastiano Panichella Zurich University of Applied Sciences, Paolo Tonella USI Lugano
DOI Pre-print
15:22
7m
Talk
eFish'nSea: Unity Game Set for Learning Software Performance Issues Root Causes and Resolutions
Software Engineering Education and Training
Andrew Quinlan Stevens Institute of Technology, Ryan Mercadante Stevens Institute of Technology, Vincent Tufo Stevens Institute of Technology, Jonathan Morrone Stevens Institute of Technology, Lu Xiao Stevens Institute of Technology