Troubleshooting SQL Exceptions

On this page

Still need help?

The Atlassian Community is here for you.

Ask the community

If you get an exception similar to those shown below, it is a good idea to increase the logging levels of your Confluence instance. If you request Atlassian support, this additional logging will help us work out the cause of the error.

Increased logging levels will enable us to diagnose errors like these:


org.springframework.dao.DataIntegrityViolationException: (HibernateTemplate): data integrity violated by SQL ''; nested exception is java.sql.BatchUpdateException: Duplicate entry '1234' for key 1
 at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQLStateSQLExceptionTranslator.java:88)
caused by: java.sql.BatchUpdateException: Duplicate entry '1234' for key 1
 at com.mysql.jdbc.ServerPreparedStatement.executeBatch(ServerPreparedStatement.java:647) 

or


(HibernateTemplate): data integrity violated by SQL ''; nested exception is java.sql.BatchUpdateException: ORA-00001: unique constraint (CONFLUENCE.SYS_C0012345) violated

This document outlines the steps to take to increasing logging on your system.

Changing the logging levels via the Administration Console

With Confluence 2.7 and later, you can adjust logging levels at runtime via the Administration Console — read the instructions. Below we tell you how to edit the log4j files directly.

  1. Open confluence/WEB-INF/classes/log4j.properties and uncomment the following lines. The double ## lines are comments, leave them intact.
    
    ## log hibernate prepared statements/SQL queries (equivalent to setting 'hibernate.show_sql' to 'true')
    #log4j.logger.net.sf.hibernate.SQL=DEBUG
    
    ## log hibernate prepared statement parameter values
    #log4j.logger.net.sf.hibernate.type=DEBUG
    
    (info) If you can not locate these lines in your log4j.properties file, please add them to the end of it.
  2. Restart Confluence.
  3. Redo the steps that led to the error.
  4. Zip up your logs directory and attach it your support ticket.
  5. If you are using Oracle and received a constraint error, please ask your database administrator which table and column the constraint (that is, CONFLUENCE.SYS_C0012345) refers to and add that information to your support ticket.
  6. Open confluence/WEB-INF/classes/log4j.properties again and remove the 4 lines you added in step 1. (The additional logging will impact performance and should be disabled once you have completed this procedure.)
RELATED TOPICS

Enabling Detailed SQL Logging
Working with Confluence Logs
Troubleshooting failed XML site backups

Last modified on May 20, 2011

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.