Это действительно зависит от принятой по умолчанию стратегии генерации идентификатора на конкретном диалекте. Grails позволяет настроить стратегию генерации с помощью mapping closure .
Наиболее «безопасной» (т.е. поддерживаемой каждой СУБД) стратегией генерации является TABLE, и это предпочтительный выбор многих реализаций JPA. Это, вероятно, то, что вы получаете в HSQLDB. Однако последовательности поддержки Oracle и эти объекты, как правило, лучше оптимизированы для обработки генерации ключей - следовательно, диалект для Oracle, похоже, использует одну глобальную последовательность. Я не знаком с Derby, но, вероятно, там есть поддержка столбцов идентификаторов, и вы получите что-то вроде UUID.