Troubleshooting

The following troubleshooting tips might help you to resolve issues with this Micro-Integration. If problems persist, contact Solace.

Key-Pair Authentication Failures
If the private key is encrypted, confirm the passphrase you supplied matches the one used to encrypt it.
Confirm the public key currently set on the Snowflake user (DESCRIBE USER <mi_user>, checking RSA_PUBLIC_KEY_FP) matches the private key file the Micro-Integration is using. If you rotated the key pair, update whichever side is out of date.
Confirm the private-key-path value in your configuration points to the correct file, and that the Micro-Integration process has permission to read it.
Streaming Insert Failures
If the error indicates the target table doesn't exist, confirm the table has been created, or that provisioning-mode.tables is set to CREATE so the Micro-Integration creates it automatically.
Confirm the database, schema, and table names are correct and use the expected case. Unquoted Snowflake identifiers are stored in uppercase by default.
Confirm the role assigned to the Micro-Integration's Snowflake user has the required privileges on the target objects. See Insufficient Privileges below.
Insufficient Privileges
Confirm the role has been granted USAGE on the warehouse, database, and schema, and either INSERT on the target table or CREATE TABLE on the schema, depending on your provisioning mode.
Confirm the role has been granted to the user, and that the user's default role or session role is set correctly.
Broad system roles such as ACCOUNTADMIN are useful for initial testing, but a dedicated, least-privilege role is recommended once you deploy to production.
Messages Not Appearing in the Target Table
Confirm the workflow is bound and running using the Spring Boot Actuator endpoints. For more information, see Managing Workflows.
Confirm the destination configured for the workflow matches the database, schema, and table you expect. A fully-qualified destination overrides any separately configured database, schema, or table values.
Query the table directly (SELECT * FROM <database>.<schema>.<table>;) rather than relying on a cached view, since writes are committed as regular table inserts and are visible as soon as the Micro-Integration's acknowledgment mode confirms the write.