--- Day changed Mon Feb 03 2020 08:38 < adiabat> about leaf nodes pointing to themselves: 08:38 < adiabat> a hack / Featureā„¢ 08:38 < adiabat> it's like, I want to have a flag bit for "memorable" so really polNode could have a "memorable bool" 08:39 < adiabat> but that one bool actually makes the node like 8 bytes bigger, which is signifcant 08:39 < adiabat> also, the big problem is all the leaves, which is 50% of the nodes, have two pointers which do nothing 08:39 < adiabat> (since they have no children / nieces) 08:40 < adiabat> I tried making polNode an interface, and then there could be 2 types: leafNodes and intermediateNodes 08:40 < adiabat> but the way (in go at least) interfaces work is that there's a pointer to the struct, and then a pointer to the interface 08:40 < adiabat> so you save 2 pointers on the leaves, but add 1 pointer to every node 08:41 < adiabat> - 16 bytes on 50% of nodes, and +8 bytes on 100% of nodes, so that gets no savings 08:41 < adiabat> (and also makes the code a bit more complex than having dead end / nil pointers at the bottom) 08:42 < adiabat> so another idea was, hey there's all this empty pointer data on the leaves, 16 bytes, each, why not put hash data in there 08:42 < adiabat> which is all like, unsafe package / pointer arithmetic, a field that's a "pointer" but half the time it's actually not 08:43 < adiabat> so... I haven't done that. But... yeah it's defintely an inefficiency in pollard / polNode 08:44 < adiabat> so right now 1/6th of the space in the pollard forest structure is nil pointers 08:44 < adiabat> but haven't found a nice clean way to avoid that 12:46 -!- nick_freeman [~nick_free@2001:16b8:30b5:5100:7c87:f218:df6:4d21] has joined #utreexo 14:17 -!- nick_freeman [~nick_free@2001:16b8:30b5:5100:7c87:f218:df6:4d21] has quit [Remote host closed the connection] 14:19 -!- nick_freeman [~nick_free@2001:16b8:30b5:5100:c08e:d0d:be77:da4] has joined #utreexo 14:27 -!- nick_freeman [~nick_free@2001:16b8:30b5:5100:c08e:d0d:be77:da4] has quit [Remote host closed the connection] 23:13 -!- nick_freeman [~nick_free@92.116.144.46] has joined #utreexo 23:31 < kcalvinalvin> So... about FullPollard... You'd want to stop and resume this 23:32 < kcalvinalvin> Not much clean ways to do this without leveldb I think 23:32 < kcalvinalvin> I guess Pollard in general unless you don't want to cache