Finding Logic Bugs in Spatial Database Engines via Affine Equivalent Inputs

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Deng, Wenjing, Mang, Qiuyang, Zhang, Chengyu, Rigger, Manuel
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866929549311213568
author Deng, Wenjing
Mang, Qiuyang
Zhang, Chengyu
Rigger, Manuel
author_facet Deng, Wenjing
Mang, Qiuyang
Zhang, Chengyu
Rigger, Manuel
contents Spatial Database Management Systems (SDBMSs) aim to store, manipulate, and retrieve spatial data. SDBMSs are employed in various modern applications, such as geographic information systems, computer-aided design tools, and location-based services. However, the presence of logic bugs in SDBMSs can lead to incorrect results, substantially undermining the reliability of these applications. Detecting logic bugs in SDBMSs is challenging due to the lack of ground truth for identifying incorrect results. In this paper, we propose an automated geometry-aware generator to generate high-quality SQL statements for SDBMSs and a novel concept named Affine Equivalent Inputs (AEI) to validate the results of SDBMSs. We implemented them as a tool named Spatter (Spatial DBMSs Tester) for finding logic bugs in four popular SDBMSs: PostGIS, DuckDB Spatial, MySQL, and SQL Server. Our testing campaign detected 34 previously unknown and unique bugs in these SDBMS, of which 30 have been confirmed, and 18 have been already fixed. Our testing efforts have been well appreciated by the developers. Experimental results demonstrate that the geometry-aware generator significantly outperforms a naive random-shape generator in detecting unique bugs, and AEI can identify 14 logic bugs in SDBMSs that were overlooked by previous methodologies.
format Preprint
id arxiv_https___arxiv_org_abs_2410_12496
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Finding Logic Bugs in Spatial Database Engines via Affine Equivalent Inputs
Deng, Wenjing
Mang, Qiuyang
Zhang, Chengyu
Rigger, Manuel
Databases
Programming Languages
Software Engineering
Spatial Database Management Systems (SDBMSs) aim to store, manipulate, and retrieve spatial data. SDBMSs are employed in various modern applications, such as geographic information systems, computer-aided design tools, and location-based services. However, the presence of logic bugs in SDBMSs can lead to incorrect results, substantially undermining the reliability of these applications. Detecting logic bugs in SDBMSs is challenging due to the lack of ground truth for identifying incorrect results. In this paper, we propose an automated geometry-aware generator to generate high-quality SQL statements for SDBMSs and a novel concept named Affine Equivalent Inputs (AEI) to validate the results of SDBMSs. We implemented them as a tool named Spatter (Spatial DBMSs Tester) for finding logic bugs in four popular SDBMSs: PostGIS, DuckDB Spatial, MySQL, and SQL Server. Our testing campaign detected 34 previously unknown and unique bugs in these SDBMS, of which 30 have been confirmed, and 18 have been already fixed. Our testing efforts have been well appreciated by the developers. Experimental results demonstrate that the geometry-aware generator significantly outperforms a naive random-shape generator in detecting unique bugs, and AEI can identify 14 logic bugs in SDBMSs that were overlooked by previous methodologies.
title Finding Logic Bugs in Spatial Database Engines via Affine Equivalent Inputs
topic Databases
Programming Languages
Software Engineering
url https://arxiv.org/abs/2410.12496