暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Oracle 19c 升级迁移注意事项:INMEMORY JOINGROUP 创建的 ORA-38350 异常

原创 eygle 2020-01-01
3507

在 Oracle 19c 的升级迁移中,必须要关注不同版本的变化,例如 SQL 写法的改变,特殊参数的设置,以避免应用迁移后的异常。这些改变有的来自功能性变化,有的则是BUG。
o_database19c_launch_rgb.png
在 MOS 文档 2559321.1 中描述了这样一个情况:DB INMEMORY JOINGROUP 的创建,在 12c 中工作正常,但是在 18c 、19c 中却是出现了 ORA-38350 号错误。

DB INMEMORY JOINGROUP Creation Fails with ORA-38350 Error in 19C and 18C but working in 12C Version (Doc ID 2559321.1)

在 Oracle 12.2 版本中测试,文档中提示的测试用例工作正常:


BANNER
--------------------------------------------------------------------------------
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
PL/SQL Release 12.2.0.1.0 - Production
CORE	12.2.0.1.0	Production
TNS for Linux: Version 12.2.0.1.0 - Production
NLSRTL Version 12.2.0.1.0 - Production

SQL> create table t1 ( c1 varchar2(10 byte) not null ) ;

Table created.

SQL> create table t2 ( c2 varchar2(10 byte) not null ) ;

Table created.

SQL> create table t3 ( c3 varchar2(10 char) not null ) ;

Table created.

SQL> create table t4 ( c4 varchar2(10 char) not null ) ;

Table created.

SQL> create inmemory join group ig_t1_t2 ( t1(c1), t2(c2) );

Join group created.

SQL> create inmemory join group ig_t3_t4 ( t3(c3), t4(c4) );

Join group created.

然而在 Oracle 19c 中,执行以上测试用例,则无法成功执行:


BANNER
--------------------------------------------------------------------------------
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

SQL> create table t1 ( c1 varchar2(10 byte) not null ) ;

Table created.

SQL> create table t2 ( c2 varchar2(10 byte) not null ) ;

Table created.

SQL> create table t3 ( c3 varchar2(10 char) not null ) ;

Table created.

SQL> create table t4 ( c4 varchar2(10 char) not null ) ;

Table created.

SQL> create inmemory join group ig_t1_t2 ( t1(c1), t2(c2) );

Join group created.

SQL> create inmemory join group ig_t3_t4 ( t3(c3), t4(c4) );
create inmemory join group ig_t3_t4 ( t3(c3), t4(c4) )
                                         *
ERROR at line 1:
ORA-38350: join group not supported on given columns

这个 BUG 在 20c 中被修正,使用到 InMemory Join Group 特性的朋友,在升级前可以请求内部修正,在 19c 中解决这个问题。

最后修改时间:2020-01-01 18:42:56
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论