It seems unlikely to me that the problem is that calling nextval
on the sequence is not working. It is much more likely that some other process has inserted data in the table with primary key values greater than the values currently being returned from the sequence. If you
SELECT seq_cnt.nextval
FROM dual
and compare that to the largest value of the primary key in the table
SELECT max(col1)
FROM xxxxx
my wager is that the maximum value is greater than the nextval
from the sequence. If that's the case, you'd generally want to reset the sequence to the current maximum value as well as figuring out how the problematic data got inserted so that the problem doesn't happen again in the future.