It's not a bug, it's a feature. You can add <batch-cascade-delete/> for the relationship role in jbosscmp-jdbc.xml for which there is cascade-delete specified in ejb-jar.xml. It will work and is more efficient.
Which one is a featuer: cascade-delete itself or the table order of cascade delete? The problem is the table order in which data are deleted. That order is wrong in any DB programming sense (f-key constraint violation), how can such a DB violation be a feature?
Check the cascade delete protocol in the spec and ask the spec committee.
"After removing the entity object
from all relationships and removing its persistent representation, the container must then cascade the
removal to all entity beans with which the entity had been previously been in container-managed relationships
for which the cascade-delete option was specified."