环境:
AIX 6.1 64bit Oracle 10gR2
概述:
同事做统计报表发现,使用hash join会报错
ORA-04030: out of process memory when trying to allocate 512040 bytes (QERGH has h-agg,QESH list array)
使用很少的hash area 空间也会报错,PGA_AGGREGATE_SIZE设置为3G,应该不是PGA不够.调大PGA错误依然。
于是连接到数据库服务器运行,却不报错.也就是通过client上去会报错,server上直接运行不报错.刚开始怀疑是一个bug或者是OS限制了资源,但是bug在服务器端也会报错才对.OS资源限制,也不可能,因为全部设置为ulimited. 这个问题纠结了两天,最终考虑到客户端client连接到数据库服务器端server只通过了监听listener一个控件,所以把监听重启了.
lsnrctl stop
lsnrctl start
问题就解决了.
总结:
分析可能是监听没有即时刷新数据库服务器的配置造成的.虽然这是一个很奇怪的问题,但是认真分析应该也是有迹可循的,从而最终解决问题.
[@more@]来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16298743/viewspace-1058123/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/16298743/viewspace-1058123/