oracle11g with 临时表不能出现多个union all count(distinct )

这是什么原因 在10g里没有问题

 WITH ABC AS
 (SELECT 1 A
  FROM   DUAL
  UNION ALL
  SELECT 1
  FROM   DUAL
  UNION ALL
  SELECT 1
  FROM   DUAL)
SELECT COUNT(DISTINCT A)
FROM   ABC
UNION ALL
SELECT COUNT(DISTINCT A)
FROM   ABC

在11g中出现的错误是ORA-03113: 通信管道的文件结束

擦是oracle的bug
在11.2.0.1中会出现
使用下面的参数解决
alter system set "_optimizer_distinct_agg_transform"=false scope=both