Error: Package Does Not Exist
Issue
While replicating to a PostgreSQL target, DELETE operations on a table fail with the following error:
DBMS error [ERROR: package "<table_name>" does not exist]
HVR may also reference the <table_name>__b burst table and report an unexpected row count.
Environment
- HVR version: 6.3.5/3 (linux_glibc2.28-x64-64bit)
- Target: PostgreSQL 17.6
- Source: DB2 for z/OS
Resolution
To troubleshoot this issue:
- Compare the base and burst table names in the HVR channel with their names in the source and target databases. Ensure the schema, table name, and capitalization match.
- If you recently changed a table or schema name, verify that the change didn't create a mismatch between the HVR channel definition and the PostgreSQL target.
- Check whether triggers or rules affect
DELETEoperations on the target table. Run the following queries, replacing the placeholders with the actual values:SELECT tgname, pg_get_triggerdef(oid) FROM pg_trigger WHERE tgrelid = '<schema_name>.<table_name>'::regclass AND NOT tgisinternal; SELECT * FROM pg_rules WHERE tablename = '<table_name>'; - Confirm that the user performing the operation has the required permissions for both the base and burst tables.
- If the issue persists, contact your database administrator to investigate the PostgreSQL configuration and any database-specific constraints.
Cause
This issue occurs when the schema or table name we expect doesn't match the corresponding name in PostgreSQL. This may happen when the capitalization differs or you change a name after the HVR channel was configured.