What happens to proofs stored above 700k increment?

Hey @cassie,

I’ve got a mac mini running v1.4.21-p1 that is above 700k increment now and it is storing proofs with increment numbers > 700k (see attached screenshot). As I looked into this, two questions came to mind:

  1. Based on the release notes proofs produced above 700k increment will be considered invalid. I’m assuming what actually matters is the difficulty (which is not logged), not the increment. Could you clarify what will be the lowest difficulty metric accepted by the protocol? The code checks for 800k increment when it clamps the difficulty metric, not 700k, so I want to make sure proofs with 25k difficulty metric will be accepted.
  2. Based on reading the code, it looks like if I restart the node, the v1.21.1-p1 migration will not be applied and it will NOT remove proofs produced above 700k increment from the db as long as the MIGRATIONS file is intact. Is that correct?
1 Like

I think you misread what was said, Cassie was saying that before the 1.4.21.1 update having proof increments above 700,000 would have caused invalid proofs without the aforementioned update.

  1. The difficulty is max 200,000 if the increment is 0. The minimum difficulty is 25,000.
    You can see the calculation here:
    ceremonyclient/node/crypto/wesolowski_frame_prover.go at main · QuilibriumNetwork/ceremonyclient · GitHub
...
difficulty := 200000 - (increment / 4)

if difficulty < 25000 || increment > 800000 {
	difficulty = 25000
}
...
  1. No, that isn’t correct. If you updated your node to 1.4.21.1 (if you want rewards for your 700K+ increment proofs), then the migration will be applied automatically-- it just won’t do anything if your latest proof increment at time of migration is below 699,999.
1 Like

Hey @Tyga thanks for looking into this and sorry for the confusion!

Re 1.: right, I was in a hurry and misread it.

Re 2.: yeah so it’s safe to restart the node after the 1.21.1-p1 migration was applied as long as the MIGRATIONS file is intact (I realized this is right after I posted and edited it in, but maybe you’ve gotten an email notification and read the original version).

1 Like

Correct, you should be good if the MIGRATIONS file is intact-- that said, the only way to apply the migration is to have run the 1.4.21.1 code (which means you’re already running it and if running it the migration is already done).

1 Like