本文主要是介绍达梦 执行查询语句时报[-544]:Out of sort buf space,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
达梦数据库有时执行SQL中有时报[-544]:Out of sort buf space, try to adjust SORT_BUF_GLOBAL_SIZE, SORT_BUF_SIZE, SORT_BLK_SIZE.
第一反应是这条语句占用排序区太大。但真实原因是前面执行的语句耗光了全局排序区,后面SQL任何小的排序操作都会报这个错误从而执行失败。下面是一个测试用例。参数SORT_FLAG=1,SORT_BUF_GLOBAL_SIZE=100。屏幕下方"insert into d select * from a order by 2"这条语句执行后全局排序区(VDTA POOL)由空涨到了110(实际分配往往会大于参数)。而后又执行了一条需要排序的语句,结果报排序区:Out of sort buf space。
值得说明地是,排序空间不足只会导致后续语句执行报错。正在排序的语句不受影响。内存不足时,排序操作将使用磁盘(查询v$mtab_used_history视图)。执行完毕排序区得以释放,后续排序语句恢复正常。
这篇关于达梦 执行查询语句时报[-544]:Out of sort buf space的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!