Is there any difference between these commands:
reindex database my_db
and
drop index my_index;
CREATE INDEX index1 ON schema1.table1 USING btree (table1_key);
where you do the second command for every single index in the database?
----- EDIT -----
An answer pointed out that the two commands have different locking behavior. Other than different locks, is there any difference in how the commands operate on the database? For example, if I took a copy of a VM and did command A (reindex) then took another copy of the VM, restored the original copy of the VM, executed command B (drop and create all indexes) and make yet another copy, would the post-A and post-B databases be identical? If not, what kinds of things would have caused the differences?