You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Patrick Linskey (JIRA)" <ji...@apache.org> on 2007/03/07 06:50:24 UTC

[jira] Updated: (OPENJPA-164) Need better logging on Java field type to SQL type mapping and exceptions

     [ https://issues.apache.org/jira/browse/OPENJPA-164?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Patrick Linskey updated OPENJPA-164:
------------------------------------

          Component/s: jdbc
                       diagnostics
        Fix Version/s: 0.9.7
    Affects Version/s: 0.9.0
                       0.9.6

> Need better logging on Java field type to SQL type mapping and exceptions
> -------------------------------------------------------------------------
>
>                 Key: OPENJPA-164
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-164
>             Project: OpenJPA
>          Issue Type: Improvement
>          Components: diagnostics, jdbc
>    Affects Versions: 0.9.0, 0.9.6
>            Reporter: Nick Johnson
>             Fix For: 0.9.7
>
>
> When a Java field and its corresponding SQL field are of incompatible types (as can happen with programming errors), OpenJPA presently just wraps the exception thrown by the JDBC driver.  For example, if the type is declared as long in Java but boolean in PostgreSQL, a PostgreSQL error that the value "f" is not compatible with the type BigDecimal.
> The problem is that there's no indication of which mapped class is responsible for the exception, which can be a problem for a class with many relationships.  Any of the related classes could have caused the problem.
> Better logging (probably at level TRACE) around calls to resultSet.getX would greatly help in debugging these problems.  Just knowing the classname and the field name the JDBC get is being called for would be tremendously helpful.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.