oxen-io / oxen-core

Oxen core repository, containing oxend and oxen cli wallets
https://oxen.io
Other
313 stars 120 forks source link

Loki 3.0.0 switched to the new LSR *before* the fork height #510

Closed jagerman closed 5 years ago

jagerman commented 5 years ago

Loki 3.0.0 nodes switched to the new LSR at the old fork height (230704, i.e. yesterday) because the number is hard-coded here and didn't get updated when the fork height got moved:

https://github.com/loki-project/loki/blob/a362aa74c23658609d1d4be0a14e4a391cbe6230/src/cryptonote_core/service_node_rules.cpp#L22

This seems... bad. I'm not 100% sure of the implications here, but it seems as though there is certainly some potential for new stakes on or from 2.0.x nodes since block 230704 to be rejected by 3.0.0 nodes.

Moral of the story: absolutely never, ever, ever hard-code a fork height.

Doy-lee commented 5 years ago

Hmm understood, very forky behaviour indeed. Will do a patch to move the conditional to check against the hf version.

jagerman commented 5 years ago

Hmm understood, very forky behaviour indeed. Will do a patch to move the conditional to check against the hf version.

I'm not sure that there is a nice fix to this (aside from getting already upgraded to 3.0.0 to upgrade to 3.0.1, but that doesn't really seem practical).

Doy-lee commented 5 years ago

Yeah no nice way. It'll have to be 3.0.1 so that 3.X nodes conform because the information in 2.X is technically valid.

jagerman commented 5 years ago

Any idea what would happen here? If someone renews (say via auto-renewal) a 2.0.x solo node, it won't have enough stake to satisfy a full 3.0.0 node, but what will happen to it? Will it end up in awaiting contribution status with the different left open, or will it just get rejected entirely?

jagerman commented 5 years ago

Apparently this is what happens: image

jagerman commented 5 years ago

Closing this; resolved by 3.0.2 release (and we're after the fork now anyway).