The system I'm working with didn't used to use global temporary tables for anything. Instead we have a buttload of throw-away tables floating around. My current project would ordinarily add to that, not just once, but twice. Yuck!

So I thought I'd see if I could get around the need for throw-away tables by creating a standardized global temporary table. That, at least, seems to be what those things are designed for. But whenever I run my query it crashes: 00600, [2865], [1025], [1024], [61693]

I have no idea what the numbers mean. More to the point, when I replace the global temporary table with a regular table the query runs fine. The problem also seems to be related to the size of the global temporary table, since a small dataset doesn't cause the crash. I've also found that the problem is related to calls to a PL/SQL function in the query, since I can avoid the crash by removing those calls from the query.

So. Is it possible to get around this problem? Is there, perhaps, some parameter I should use when defining the global temporary table?