On 10/8/19 12:33 PM, Michael Lewis wrote:
Hi Michael,
In this case , I always need to include partition key(date) in primary key ( if I have a primary key defined on non partition key column e.g id (in my case), to make it a composite primary key (id, date). This would allow duplicate id with different date,which is not desirable .
If you are generating the ID with a sequence, there isn't any real world likelihood of conflict, but I do understand your concern in terms of enforcing data integrity. Other than creating a custom stored procedure that functions as a primary key constraint, I don't know of any way around that.
Let's take a step back... why do you think you need to partition at all? And why partition by the date/timestamp/timestamptz field?
Because archiving old is (well,
should be) easier that way.
--
Angular momentum makes the world go 'round.