功能堆栈化

有效对象

提取和复制

说明

使用 FUNCTIONSTACKSIZE 参数控制用于处理 Oracle GoldenGate 列转换函数的内存堆栈大小。内存堆栈保存提供给 Oracle GoldenGate 函数的参数以及从该函数提供的参数。您无需使用此参数,除非 Oracle GoldenGate 返回一条消息,指示应增加堆栈大小。消息类似于:

Not enough stack space. Specify FUNCTIONSTACKSIZE greater than {0,number,0}

当使用大量函数或参数时,可能会发生这种情况。

不带 FUNCTIONSTACKSIZE 的默认值为 200 个参数,用于优化 Oracle GoldenGate 的性能及其系统内存的使用情况。增大此参数会对性能和系统内存的使用产生不利影响。

为协调复制设置 FUNCTIONSTACKSIZE 时,请考虑将指定值应用于配置中的每个线程,而不是作为整个复制的聚合阈值。例如,如果指定了 FUNCTIONSTACKSIZE 400,则每个线程都可以有 399 个参数,而不会出现来自 Replicat 的任何警告或错误。

在列出包含函数的任何参数之前,FUNCTIONSTACKSIZE 必须显示在参数文件中。FUNCTIONSTACKSIZE 是全局参数。它会影响参数文件中的所有子句。

默认值

200 参数

语法

FUNCTIONSTACKSIZE <number>

<number>

介于 0 和 5000 之间的值,表示参数子句中允许的函数参数数量。

示例

FUNCTIONSTACKSIZE 300