Finding bugs in Gremlin-based graph database systems via Randomized differential testing
Yingying Zheng, Wensheng Dou, Yicheng Wang, Zheng Qin, Lei Tang, Yu Gao, Dong Wang, Wei Wang, Jun Wei
摘要
Graph database systems (GDBs) allow efficiently storing and retrieving graph data, and have become the critical component in many applications, e.g., knowledge graphs, social networks, and fraud detection. It is important to ensure that GDBs operate correctly. Logic bugs can occur and make GDBs return an incorrect result for a given query. These bugs are critical and can easily go unnoticed by developers when the graph and queries become complicated. Despite the importance of GDBs, logic bugs in GDBs have received less attention than those in relational database systems. In this paper, we present Grand, an approach for automatically finding logic bugs in GDBs that adopt Gremlin as their query language. The core idea of Grand is to construct semantically equivalent databases for multiple GDBs, and then compare the results of a Gremlin query on these databases. If the return results of a query on multiple GDBs are different, the likely cause is a logic bug in these GDBs. To effectively test GDBs, we propose a model-based query generation approach to generate valid Gremlin queries that can potentially return non-empty results, and a data mapping approach to unify the format of query results for different GDBs. We evaluate Grand on six widely-used GDBs, e.g., Neo4j and HugeGraph. In * Wensheng Dou and Wei Wang are the corresponding authors. CAS is the abbreviation of Chinese Academy of Sciences. ISCAS is the abbreviation of Institute of Software, Chinese Academy of Sciences.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper25
- Testing Graph Database Engines via Query PartitioningMatteo Kamm, Manuel Rigger, Chengyu Zhang, Zhendong SuISSTA 2023 · 被引用 29 次
- Detecting Transactional Bugs in Database Engines via Graph-Based Oracle ConstructionZu-Ming Jiang, Si Liu, Manuel Rigger, Zhendong SuOSDI 2023 · 被引用 28 次
- Testing Database Systems via Differential Query ExecutionJiansen Song, Wensheng Dou, Ziyu Cui, Qianwang Dai 等ICSE 2023 · 被引用 26 次
- GDsmith: Detecting Bugs in Cypher Graph Database EnginesZiyue Hua, Wei Lin, Luyao Ren, Zongyang Li 等ISSTA 2023 · 被引用 24 次
- Testing Graph Database Systems via Graph-Aware Metamorphic RelationsZeyang Zhuang, Penghui Li, Pingchuan Ma, Wei Meng 等VLDB 2024 · 被引用 23 次
它引用的顶会 Paper5
- Testing Database Engines via Pivoted Query SynthesisManuel Rigger, Zhendong SuOSDI 2020 · 被引用 150 次
- Finding bugs in database systems via query partitioningManuel Rigger, Zhendong SuOOPSLA 2020 · 被引用 116 次
- Detecting optimization bugs in database engines via non-optimizing reference engine constructionManuel Rigger, Zhendong SuFSE 2020 · 被引用 104 次
- APOLLO: Automatic Detection and Diagnosis of Performance Regressions in Database SystemsJinho Jung, Hong Hu, Joy Arulraj, Taesoo Kim 等VLDB 2020 · 被引用 77 次
- Metamorphic testing of Datalog enginesMuhammad Numair Mansur, Maria Christakis, Valentin WüstholzFSE 2021 · 被引用 25 次
相关 Paper
- Testing Gremlin-Based Graph Database Systems via Query DisassemblingYingying Zheng, Wensheng Dou, Lei Tang, Ziyu Cui 等ISSTA 2024 · 被引用 6 次
- Testing Graph Databases with Synthesized QueriesZijing Yin, Si Liu, David A. BasinSIGMOD 2026 · 被引用 2 次
- Detecting Logic Bugs in Graph Database Management Systems via Injective and Surjective Graph Query TransformationYuancheng Jiang, Jiahao Liu, Jinsheng Ba, Roland H. C. Yap 等ICSE 2024 · 被引用 14 次
- Testing Graph Database Systems via Equivalent Query RewritingQiuyang Mang, Aoyang Fang, Boxi Yu, Hanfei Chen 等ICSE 2024 · 被引用 12 次
- Finding Logic Bugs in Graph-processing Systems via Graph-cuttingQiuyang Mang, Jinsheng Ba, Pinjia He, Manuel RiggerSIGMOD 2025 · 被引用 4 次
