I don't know your use-case exactly but every distributed system engineer should know that 2PC is extremely dangerous.
It is a blocking protocol, This mean if the coordinator crash , some participants will never resolve their transactions.
After a participant has sent an agreement message to the coordinator, it will completely block until a commit or rollback is received from the coordinator but this will never happen.