How to Factory Reset Tamr on a Single-Node Deployment

In some cases it is necessary to factory reset your instance of Tamr. Whether this is to clear out an instance before implementing a restore procedure (always recommended) or simply to start with a clean instance, the steps are the same. Below is the recipe to clear out Tamr data and metadata on a single-node deployment, making it a fresh instance.

Please note that all of these steps have to be run or Tamr will be in an inconsistent state and likely to be unable to start/run.

Step 1: Before beginning, ensure that you are signed in as the Tamr functional user. First save as a reference, then reset all configuration variables

Save configuration for reference.

${TAMR_HOME}/tamr/utils/ config:get --userDefined > config_custom_<date>.yaml

${TAMR_HOME}/tamr/utils/ config:get > config_all_<date>.yaml

Now reset

${TAMR_HOME}/tamr/utils/ config:reset

Step 2: Turn off Tamr and dependencies



Step 3: Remove the underlying data stored in Tamr

rm -r ${TAMR_HOME}/tamr/hbase-data

rm -r ${TAMR_HOME}/tamr/unify-data

Step 4: Remove data from Elasticsearch

rm -r ${TAMR_HOME}/elasticsearch-5.6.3/data

rm -r ${TAMR_HOME}/elasticsearch-with-plugins-6.8.2/data

Note: The elasticsearch-5.6.3/data will only exist if TAMR_ELK_ENABLED=true in Tamr configurations.

Step 5: Clear out metadata from postgres

sudo su - postgres

psql -h localhost -p 5432 -f clean_doit.sql

clean_doit.sql script helps drop the ‘doit’ database and create new ‘doit’ database with owner as ‘tamr’

Here are the SQL queries inside the ‘clean_doit.sql’ script:



Step 6: Switch back to the Tamr functional user and turn on Tamr dependencies


Step 7: Re-apply any user-defined configuration variables

${TAMR_HOME}/tamr/utils/ config:set --file config_custom_<date>.yaml

Step 8: Turn on Tamr


In cases that the above commands cannot be executed, please contact [email protected] for assistance.