You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Mike Matrigali (JIRA)" <ji...@apache.org> on 2007/05/04 00:27:15 UTC

[jira] Updated: (DERBY-2606) Derby should print the parameters to failed statements to the derby.log when it logs the error

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

Mike Matrigali updated DERBY-2606:
----------------------------------


I would like to see this change for as much default behavior as possible.  I find trying to support cases I often get  a database or derby.log and  need to help the user from the data there.  Having the parameters can help me help the user a lot.  For instance in a recent case posted the user is getting the following error in derby.log:

Database Class Loader started - derby.database.classpath=''
2007-05-02 17:41:59.626 GMT Thread [DefaultQuartzScheduler_Worker-1,5,main] (XID = 28872), (SESSIONID =  0), (DATABASE = /opt/jcr/repository/workspaces/default/db), (DRDAID =  null), Cleanup action starting
2007-05-02 17:41:59.626 GMT Thread [DefaultQuartzScheduler_Worker-1,5,main] (XID = 28872), (SESSIONID =  0), (DATABASE = /opt/jcr/repository/workspaces/default/db), (DRDAID =  null), Failed Statement is: select NODE_DATA from DEFAULT_NODE where  NODE_ID = ? 

What I would like to say  to the user is to make a copy of the db, and run this exact query to determine if the error is 
persistent or runtime, but without the parameter there is no way to know which row is the problem.  I am not even sure
if check table will find this kind of error. 

Also note that if params were not being used then the data would have shown up in the log, so if we are concerned about 
data showing up in derby.log then I believe there is an existing problem.  I think that if derby is allowed to print statements it should print the params also.  Maybe we need some other option whether it is allowed to print statements at all.  

> Derby should print the parameters to failed statements to the derby.log when it logs the error 
> -----------------------------------------------------------------------------------------------
>
>                 Key: DERBY-2606
>                 URL: https://issues.apache.org/jira/browse/DERBY-2606
>             Project: Derby
>          Issue Type: Improvement
>          Components: Services
>    Affects Versions: 10.3.0.0
>            Reporter: Kathey Marsden
>         Assigned To: Kathey Marsden
>            Priority: Minor
>
> It would be good if when derby dumped an error to derby.log it printed the parameters for the failed statement.  Currently the default behaviour is that only the statement text will print.  Users have to set  derby.language.logStatementText=true if they want to see the parameters.  It would be useful if any errors included the parameters as well as the statement text.
> To reproduce 
> put derby.stream.error.logSeverityLevel=0 in your derby.properties and run this script:
>  connect 'jdbc:derby:wombat;create=true';
> create table t (i int);
> prepare p as 'insert into t values(?)';
>  execute p using 'values(1)';
> execute p using 'values(10000000000000000000000000000000000000000000)';

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