The SELECT FOR SHARE command acquires RowShareLock table lock and a FORSHARE row lock. Following are the locks SELECT FOR SHARE acquires, the commands that are allowed to run concurrently with its lock RowShareLock and the commands that conflict with it. The list also includes the conflicting row locks if applicable
Commands concurrently allowed on the table with SELECT FOR SHARE
e.g. If tx1 does a SELECT FOR SHARE on the table then tx2 is allowed to do any of the following commands concurrently on the same table without being blocked. Some DMLs executed on the same rows may block, read more below.
Commands conflicting with SELECT FOR SHARE on the table
e.g. If tx1 does a SELECT FOR SHARE on the table then concurrently tx2 tries to do any of the following commands on the same table, tx2 will be blocked. Conversely, if tx1 executes any of the following commands and then tx2 concurrently tries to execute SELECT FOR SHARE, tx2 will block.