Как реализовать фильтр BuildAuditTable репликатора вольфрама

Это касается:

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

Пожалуйста, дайте мне знать, как я могу решить эту проблему. Также у меня были сомнения по поводу таблицы аудита: создается ли она автоматически или мы должны ее создать и какова будет ее схема (имена столбцов и т. д.).

Ждем вашего любезного ответа.


person Sharad Kumar    schedule 18.11.2014    source источник


Ответы (1)


Мне пришлось добавить файл .tpl (шаблон) до tpm install, чтобы определить новое свойство в файле конфигурации static-{service_name}.properties.

  1. Создайте новый каталог в tungsten-replicator/filters, куда вы распаковали архив Tungsten.

    Начиная с версии 3.0.0, это также может находиться в каталоге, указанном с помощью --template-search-path.

  2. Добавьте 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=
    
  3. Установить:

    ./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 на одном из узлов, чтобы увидеть, был ли включен файл шаблона.

Что касается таблицы аудита, беглый взгляд на исходный код указывает, что

  • Вам нужно создать таблицу самостоятельно
  • Схема та же, что и у входящей таблицы

Это означает, что либо репликация должна быть ограничена одной таблицей, либо таблица аудита должна содержать все возможные столбцы, содержащиеся в базе данных.

person ento    schedule 28.11.2014