Distributed Execution Indexing

This work-in-progress report presents both the design and partial evaluation of distributed execution indexing, a technique for microservice applications that precisely identifies dynamic instances of inter-service remote procedure calls (RPCs). Such an indexing scheme is critical for request-level fault injection techniques, which aim to automatically find failure-handling bugs in microservice applications.Distributed execution indexes enable granular specification of request-level faults, while also establishing a correspondence between inter-service RPCs across multiple executions, as is required to perform a systematic search of the fault space.In this paper, we formally define the general concept of a distributed execution index, which can be parameterized on different ways of identifying an RPC in a single service. We identify an instantiation that maintains precision in the presence of a variety of program structure complexities such as loops, function indirection, and concurrency with scheduling nondeterminism. We demonstrate that this particular instantiation addresses gaps in the state-of-the-art in request-level fault injection and show that they are all special cases of distributed execution indexing. We discuss the implementation challenges and provide an implementation of distributed execution indexing as an extension of , a resilience testing tool for microservice applications for the Java programming language, which supports fault injection for gRPC and HTTP.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/02/2021

Representing Gate-Level SET Faults by Multiple SEU Faults at RTL

The advanced complex electronic systems increasingly demand safer and mo...
research
01/20/2020

Transparently Capturing Request Execution Path for Anomaly Detection

With the increasing scale and complexity of cloud systems and big data a...
research
10/21/2021

Model-based Reinforcement Learning for Service Mesh Fault Resiliency in a Web Application-level

Microservice-based architectures enable different aspects of web applica...
research
05/11/2020

ProFIPy: Programmable Software Fault Injection as-a-Service

In this paper, we present a new fault injection tool (ProFIPy) for Pytho...
research
08/10/2023

Checkpoint Placement for Systematic Fault-Injection Campaigns

Shrinking hardware structures and decreasing operating voltages lead to ...
research
03/28/2019

Co-evolving Tracing and Fault Injection with Box of Pain

Distributed systems are hard to reason about largely because of uncertai...
research
12/27/2018

TripleAgent: Monitoring, Perturbation And Failure-obliviousness for Automated Resilience Improvement in Java Applications

In this paper, we present a novel system for fault injection in producti...

Please sign up or login with your details

Forgot password? Click here to reset