Skip to content

Clean up old Thrift Client objects #2

@vrv

Description

@vrv

Following temporary thrift client creations (e.g., communicating between a joining node and an old tail to get updates), the current code does not delete the thrift client object used to communicate. It used to be done as follows

client->rpc_call(...);
delete client;

But this would result in segmentation faults, presumably because the rpc_call() code has some degree of asynchrony with respect to network sockets, etc. To ensure the system doesn't crash, we don't delete these temporary objects, but we should figure out 1) whether this is a thrift issue or 2) what we can do in our code to perform the cleanup.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions