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 "Bryan Pendleton (JIRA)" <ji...@apache.org> on 2017/06/29 18:54:00 UTC

[jira] [Comment Edited] (DERBY-6943) Undefined behavior of SYSCS_DIAG.ERROR_LOG_READER() when using rolling log files

    [ https://issues.apache.org/jira/browse/DERBY-6943?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16068784#comment-16068784 ] 

Bryan Pendleton edited comment on DERBY-6943 at 6/29/17 6:53 PM:
-----------------------------------------------------------------

Rick, I'm a bit confused by your proposed options: doesn't the argument that is passed to the function decide which log file it should read?

Or, were you only asking what the behavior should be when the argument is omitted?



was (Author: bryanpendleton):
Rick, I'm a bit confused by your proposed options: doesn't the argument that is passed to the function decide which log file it should read?

> Undefined behavior of SYSCS_DIAG.ERROR_LOG_READER() when using rolling log files
> --------------------------------------------------------------------------------
>
>                 Key: DERBY-6943
>                 URL: https://issues.apache.org/jira/browse/DERBY-6943
>             Project: Derby
>          Issue Type: Bug
>          Components: Services
>    Affects Versions: 10.13.1.1
>            Reporter: Rick Hillegas
>
> The behavior of SYSCS_DIAG.ERROR_LOG_READER() is undefined when the engine is booted with -Dderby.stream.error.style=rollingFile. At a minimum, it should scan at least one of the rolling files. Instead, it raises an exception saying that it can't find derby.log.
> The following script shows this behavior:
> {noformat}
> connect 'jdbc:derby:memory:db;create=true';
> -- correctly succeeds if using ordinary diagnostic logging
> -- INCORRECTLY RAISES 'No such file or directory' if -Dderby.stream.error.style=rollingFile is set
> SELECT count(*) FROM TABLE (SYSCS_DIAG.ERROR_LOG_READER()) AS T1;
> -- correctly succeeds if using ordinary diagnostic logging
> -- correctly raises 'No such file or directory' if -Dderby.stream.error.style=rollingFile is set
> SELECT count(*) FROM TABLE (SYSCS_DIAG.ERROR_LOG_READER('derby.log')) AS T1;
> -- correctly raises 'No such file or directory' if using ordinary logging
> -- correctly succeeds if -Dderby.stream.error.style=rollingFile is set
> SELECT count(*) FROM TABLE (SYSCS_DIAG.ERROR_LOG_READER('derby-0.log')) AS T1;
> {noformat}
> We should decide on a correct behavior for SYSCS_DIAG.ERROR_LOG_READER() when the -Dderby.stream.error.style=rollingFile property is set. Here are some options:
> 1) Scan all of the rolling diagnostic log files, starting at derby-0.log and
> continuing through the last in the series.
> 2) Scan just the first rolling diagnostic log file.
> 3) Scan just the last (current) diagnostic log file.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)