![](https://secure.gravatar.com/avatar/be4a8eaa75d904276e4551aedf1f4b9b.jpg?s=120&d=mm&r=g)
On Thu, 7 Jul 2022 at 16:05, Sergei Golubchik
Hi, Nikita,
This is good, but I think fill_extra_persistent_columns() shouldn't be used at all.
It doesn't handle default values. I've changed rpl_alter_extra_persistent test as
-alter table t1 add column z1 int as(a+1) virtual, add column z2 int as (a+2) persistent; +alter table t1 add column z1 int as(a+1) virtual, add column z2 int default (a+2);
and, of course, new column z2 wasn't updated properly. An easy fix would be to use your code in all cases and remove fill_extra_persistent_columns().
Could you do that too, please? And add the test case too. May be just, append
, add column z3 int default (a+2)
I'm afraid that we still should mark whose fields for write, or we'll end up broken. So i guess i'll just remove the function and will add a raw cycle through thow fields with marking. There's no error check, so it's not worth a function anymore