这是关于:
com.continuent.tungsten.replicator.filter.BuildAuditTable
我尝试了Tungsten 2.2和3.0
我的初始配置
./tools/tpm install alpha \
--topology=master-slave \
--master=host1 \
--replication-user=tungsten \
--replication-password=password \
--install-directory=/opt/continuent \
--members=host1,host2 \
--start
然后我尝试通过以下两种方式添加BuildAuditTable过滤器:
尝试1:
./tools/tpm update alpha \
--property='replicator.filter.bidiSlave.auditf=com.continuent.tungsten.replicator.filter.BuildAuditTable' \
--property='replicator.filter.bidiSlave.auditf.targetTableName=indiaresorts.audit_table' \
--repl-svc-applier-filters=auditf
尝试2:
./tools/tpm update alpha \
--property='replicator.filter.auditf=com.continuent.tungsten.replicator.filter.BuildAuditTable' \
--property='replicator.filter.auditf.targetTableName=indiaresorts.audit_table' \
--repl-svc-applier-filters=auditf
但两次我都收到以下错误:
Error on host2 (slave)
ERROR :
pendingExceptionMessage: Plugin class name property is missing or null: key=replicator.filter.auditf
请让我知道如何解决这个问题。此外,我对审计表有疑问:它是自动创建还是我们必须创建它以及它的架构(列名e.t.c。)。
等待你的回应。
答案 0 :(得分:0)
我必须在tpm install
之前添加.tpl(模板)文件,以便在static-{service_name}.properties
配置文件中定义新属性。
在tungsten-replicator/filters
创建一个新目录,在那里您解压缩了Tungsten tarball。
从3.0.0开始,this can also be in the directory specified with --template-search-path
。
添加包含自定义属性键和默认值的tungsten-replicator/filters/your_name_of_choice.tpl
。
replicator.filter.custom=com.continuent.tungsten.replicator.filter.JavaScriptFilter
replicator.filter.custom.script=
replicator.filter.custom.config=
安装:
./tools/tpm install alpha \
...
--property='replicator.filter.custom.script=path/to/script' \
--property='replicator.filter.custom.config=path/to/config' \
--repl-svc-applier-filters=custom
您可以检查其中一个节点上的path/to/installation_directory/{service_name}/tungsten/tungsten-replicator/conf/static-{service_name}.properties
处的服务配置文件,以查看该模板文件是否已合并。
至于审计表,偶然看一眼source code似乎表明
这意味着复制必须限制在单个表中,或者审计表必须包含数据库中包含的所有可能列。