I felt that once you remove the create publication/subscription/wait
for sync steps, the test execution might become faster and save some
time in the local execution, cfbot and the various machines in
buildfarm. If the execution time will not reduce, then no need to
change.
So, as I noted earlier, there are different schemas. As far as I count, there are at least
7 different table definitions. I think all tables having the same name are maybe confusing?
Even if I try to group the same table definitions, and avoid create publication/subscription/wait
for sync steps, the total execution time of the test drops only ~5%. As far as I test, that does not
seem to be the bottleneck for the tests.
Well, I'm really not sure if it is really worth doing that. I think having each test independent of each
other is really much easier to follow.
Though, while looking into the execution times, I realized that in some tests, I used quite a lot
of unnecessary tuples such as:
- "INSERT INTO test_replica_id_full SELECT i, i FROM generate_series(0,2100)i;");
+ "INSERT INTO test_replica_id_full SELECT i, i FROM generate_series(0,21)i;");
In the next iteration of the patch, I'm going to decrease the number of tuples. That seems to
save 5-10% of the execution time on my local machine.
Thanks,
Onder KALACI