Gm,

Have very good/bad news about WoT relay.

The latest version is finally super stable and fast and can run on a very small VM now.

The bad news is when you upgrade, your old DB gets nuked and starts a new one.

Basically lmdb was causing a lot of stability issues, so we are using badger DB now.

Reply to this note

Please Login to reply.

Discussion

be careful with the subscriptions on that eventstore tho, i'm warning you

if you don't close out subscriptions in a timely manner it will lead to a really nasty resource leak that blows CPU usage to 100% after about 24 hours

yeah, that's right, i'm working on better things now, i totally rewrote go-nostr and just finished testing everything works correctly, in my downtime i'll be refining the feature set to add various features for paid and filtering, probably can steal stuff from your work... my API is substantially different in places so it takes a bit of time (i've eschewed strings everywhere because they are incompatible with better memory management for buffers)

oh yeah and i rewrote that whole thing, and the API... it spawns so many goroutines, that's part of the reason it's a problem... everything is now single threaded in my version

it's silly to multithread workers on a per user basis anyway, there's only one database!

Any way to sync events from existing to new if running both simultaneously? Other db migration paths?

I'm sure someone could code it up but I'm not willing to do it lol, relays are so young I don't think it's worth a few days of work to save a week of notes

Do it the strfry way

Have an export all notes/bulk import function

i already did one, it's really not that hard... at least, as a simple CLI command

you can use "nak" and do something like:

nak req -k 0 -k 1 -k 3 -k ... (list all kinds of events you want to backup) wss://old.relay | nak event wss://new.relay

it's not hard to make an export/import function btw... just walk the entire database of event records and dump out the json with line separators to a .jsonl file and reverse the process for input

Ty sir but I'm too lazy to do this, I hope someone else will if they care about their old notes 🐸

I have already nuked mine lol

hah... that code took me less than a day to put together

think of the sysadmins, they are just lowly button pushers

Ooooh will upgrade tonight!

Thank you πŸ˜„

It's all good. It's nuking time πŸ™Œ