Vector35 / Vector35/binaryninja-api

Need the ability to "roll back" snapshots on the Enterprise server from the client

Open
#7,050 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Component: Core Component: Database Edition: Ultimate Effort: Medium Impact: High
Dominant language
C++
Stars
1.3k
Forks
298
Avg merge
5d 5h
Merged PRs (30d)
19

Description

What is the feature you'd like to have?
Once #3314 is completed, we should begin work on implementing the ability for a user to use that interface to interact with the Enterprise server and "roll back" a snapshot on the remote.

Is your feature request related to a problem?
In the event database surgery is required, there's currently no easy/straight-forward way for users to apply that surgery to the remote other than uploading a new BNDB.

Are any alternative solutions acceptable?
If we don't think this'll work best from the database management interface, that's fine, we just need some way of doing a "force push" or providing the same kind of interface and actions, but for the server's snapshots.

Additional Information:
We will also need to have a way, in the client, for other users to "force pull", in a sense? Ideally, we'd be able to apply whatever surgery is necessary in a way that would preserve the local database and snapshots as much as possible, but it may not always be feasible. So, we may need to tell users "We're going to throw away your data and re-sync, do you want to save your current work as a separate file first?" or something.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading issue #3314, which this work depends on, then trace the proposed database management interface between the client and Enterprise server. Define how remote snapshot rollback, client-side force-pull behavior, local database preservation, and user warnings should work. Done means users can apply required database surgery remotely without simply uploading a new BNDB.

Written by the indexing model from the issue text.

Assessment

Domain
database, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.