Any workarounds for lack of primary key on partitioned tables?
The most common solution is to make an exception and not add the foreign key. I guess this must be very large tables and there are usually not that many of them, so a few exceptions for better performance are typically acceptable. You could try to enforce the foreign key relationship with triggers, though it is messy. I don't know of a better alternative for PostgreSQL 10.