SQL Server Known Issue: Liquibase Metadata NullPointerException During 360Suite DB Initialization

SQL Server Known Issue: Liquibase Metadata NullPointerException During 360Suite DB Initialization

Environment

  • Product version(s): 360Suite
  • Third-party technology: Microsoft SQL Server
  • Database (if applicable): SQL Server collation and database permissions

Symptoms

Customers may encounter database initialization or connection validation failures in 360Suite, and users may be unable to log in (except BI Administrator in some cases).

  • Error occurs during Liquibase initialization on SQL Server.
  • Database connection test fails even when connectivity appears correct.
  • Applying VIEW_DEFINITION alone may not resolve the issue.

Steps to Reproduce

  1. Configure 360Suite with a Microsoft SQL Server database.
  2. Use a SQL Server collation that is case-sensitive or binary (for example SQL_Latin1_General_CP850_BIN2).
  3. Run database connection test from 360Suite Administration console.
  4. The process fails with a Liquibase NullPointerException-related error.

Error Message

Quote
java.lang.NullPointerException
or
Quote
java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "liquibase.snapshot.CachedRow.getInt(String)" is null
or
Quote
java.lang.NullPointerException at liquibase.snapshot.jvm.ColumnSnapshotGenerator.readDataType(ColumnSnapshotGenerator.java:539)

Cause

  • Context: The issue appears during database connection in 360Suite with SQL Server.
  • Technical explanation: Two configuration points can trigger this behavior:
    • Missing or ineffective VIEW DEFINITION permissions for the SQL login.
    • SQL Server database collation is not Case Insensitive (CI). Case-sensitive or binary collations are not compatible with this metadata reading flow in this context.

Resolution

  1. Confirm VIEW DEFINITION is explicitly granted to the SQL user used by 360Suite.
  2. Confirm this permission is applied on all relevant databases involved in the setup.
  3. Verify the database collation is Case Insensitive (CI), for example Latin1_General_CI_AS.
  4. If current collation is case-sensitive or binary (for example SQL_Latin1_General_CP850_BIN2), switch to a CI collation according to your SQL Server change process.
  5. Re-run 360Suite database connection or initialization.

Option 2: Workaround

  1. If collation change cannot be done immediately, first verify and re-apply VIEW DEFINITION for the target SQL login.
  2. Validate that the same login is effectively used by 360Suite.
  3. Plan and execute migration to a CI collation as soon as possible.

Validation

After applying the configuration changes:

  1. Run the 360Suite database connection test again.
  2. Confirm initialization no longer throws Liquibase metadata NullPointerException.
  3. Confirm non-admin users can authenticate normally when applicable.

Additional Information

  • Recommended prerequisite checklist for SQL Server environments:
    • SQL login used by 360Suite has explicit VIEW_DEFINITION rights.
    • Target database collation is Case Insensitive (CI).

If the issue persists after these checks, contact support and provide:

  • Tomcat or 360Suite logs from a failing attempt.
  • SQL user used by 360Suite.
  • Current SQL Server or database collation.

    • Related Articles

    • Wrong collation for 360Eyes database on SQL Server

      Error Updating SQL Server Password in 360Eyes – Collation Issue Description After updating the SQL Server account password used in 360Eyes, attempts to update the password in the Eyes Configuration (Admin Page) result in a runtime error: [ERROR] ...
    • Connection error on SQL Server : DB server closed connection

      Symptom Error message : SQL Server : Error : java.io.IOException: DB server closed connection Where to find the information : When connecting 360Suite / 360Eyes to SQL Server database Environment Product : 360Suite / 360Eyes Product Version : All ...
    • Audit Snapshot Fails in 360Eyes — Unsupported DB URL (jdbc:sqlanywhere)

      Symptoms When running the 360Eyes – Audit job, the job fails during DO_SPECIFIC_JOB_ACTIONS and the log displays: Could not generate snapshot : Current DB URL (jdbc:sqlanywhere:DSN=BIA_Audit_PROD) is not supported. Cause The Audit data source is ...
    • How to configure SQL Server with Windows Authentication

      Symptom When trying to configure a SQL Server database using Windows Authentication as part of the 360eyes database configuration, the following error is returned: "The driver is not configured for integrated authentication". Environment 360Eyes ...
    • How to expand Dataprovider SQL Query column in 360Eyes database

      Symptom When running 360Eyes Impact Analysis Reports (such as Report 52), users observe that the SQL query stored in the 360eyes_REPORTS.unx / Eye Document / Dataprovider / Dataprovider Sql Queryfield is incomplete, partial or truncated. This often ...