Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support VSS #40

Closed
moneyball opened this issue Jan 19, 2023 · 9 comments
Closed

Support VSS #40

moneyball opened this issue Jan 19, 2023 · 9 comments
Milestone

Comments

@moneyball
Copy link

No description provided.

@moneyball
Copy link
Author

Will need to decide on a VSS server. Will Spiral operate a server similar to how we do so for RGS? Will the expectations of that be just for testing? I think unlike RGS, which I believe we're ok with it being used for production applications, we would NOT be ok with production usage for a Spiral VSS server as heavy usage could be a material expense and there would be more liability with running it.

@G8XSU @TheBlueMatt @tnull @arik-so

@moneyball
Copy link
Author

Also what will be our design choices for the server? postgres + run on the same server as we use for RGS? is Matt the admin of this?

Are there other decisions that need to be made when configuring a server deployment?

@G8XSU
Copy link
Contributor

G8XSU commented Jan 19, 2023

Yes, we will not be ok with production hosted instance at all.
For testing, it would be very easy to spin up vss-server on laptop and use it.
So maybe we won't need a hosted vss-server by spiral at all.

@moneyball
Copy link
Author

Ah ok. Good idea to just run on the local dev machine for testing purposes. We will want to think through the out-of-box experience for LDK Node for a mobile dev though. We want to make it as simple as possible. Would we

a) have VSS off by default and a dev has to actively configure it to be on (and also setup a server, possibly on their dev machine/laptop)?
b) have VSS on by default and provide very good instructions on setting up the server?

@tnull
Copy link
Collaborator

tnull commented Jan 19, 2023

+1 for not running our own public instance.

a) have VSS off by default and a dev has to actively configure it to be on (and also setup a server, possibly on their dev machine/laptop)? b) have VSS on by default and provide very good instructions on setting up the server?

In absence of a available public server, I'd tend towards a).

For testing, it would be very easy to spin up vss-server on laptop and use it. So maybe we won't need a hosted vss-server by spiral at all.

@G8XSU Do you see a chance that the backend will easily run in Github CI, so the integration can be tested there, similar to the way we test sync against Esplora for example?

@G8XSU
Copy link
Contributor

G8XSU commented Jan 20, 2023

@tnull I think it should be doable, we will check CI out once the integration is complete.

@moneyball Imo, both (a) and (b) have good trade-offs and are great options, (b) being the best-practice but (a) will be easier to get running. We can think more in that direction.

@danielnordh
Copy link

Without knowing much about VSS (no repo readme, spec etc):

  • Can we get the spec VSS will use for how state should be stored published?
  • And then have ldk-node support export in that format

This would give developers choice of using a compatible format separately of the server component.
Would be great for flexibility.

@tnull
Copy link
Collaborator

tnull commented Feb 10, 2023

Without knowing much about VSS (no repo readme, spec etc):

  • Can we get the spec VSS will use for how state should be stored published?
  • And then have ldk-node support export in that format

This would give developers choice of using a compatible format separately of the server component. Would be great for flexibility.

I'm not exactly sure what you're trying to do. If you just want to do local backups, you should be able to do that via snapshotting what the persistence backend is writing (e.g. the SQLite database). VSS is really meant to be a backup solution for remote backups, as these are really tricky to get right due to their asynchronous nature.

@tnull tnull mentioned this issue May 22, 2023
9 tasks
@tnull tnull added this to the 0.2 milestone May 22, 2023
@tnull tnull mentioned this issue Sep 27, 2023
8 tasks
@tnull tnull modified the milestones: 0.2, 0.3 Sep 27, 2023
@tnull tnull modified the milestones: 0.3, 0.4 Nov 15, 2023
@tnull
Copy link
Collaborator

tnull commented Feb 7, 2024

Closing this in favor of #246.

@tnull tnull closed this as completed Feb 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants