[
https://issues.apache.org/jira/browse/LOG4NET-495?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dominik Psenner reassigned LOG4NET-495:
---------------------------------------
Assignee: Dominik Psenner
> Error when BufferSize is >1, parameter already defined
> ------------------------------------------------------
>
> Key: LOG4NET-495
> URL: https://issues.apache.org/jira/browse/LOG4NET-495
> Project: Log4net
> Issue Type: Bug
> Components: Appenders
> Affects Versions: 1.2.15
> Environment: Windows 7
> Reporter: Rick Burge
> Assignee: Dominik Psenner
>
> Downloaded the subject revision 1714197 in order to get the
> ADONetAppender_SqlServer appender to work as this revision corrected a
> problem. The appender began to work. However if the BufferSize was increased
> to >1 an error was reported that the parameter @log_date was already defined.
> The error appears to be in SendBuffer. Because the IDbCommand dbCmd is being
> reused inside the foreach (LoggingEvent e in Events), each time the
> param.Prepare(dbCmd) is called for the same appender it will attempt to add a
> parameter that has already been added.
> My local solution was to clear the commands parameter list prior to adding
> the preparing the paramters:
> foreach (LoggingEvent e in events)
> {
> dbCmd.Parameters.Clear(); //*****added this
> line*****
> // Set the parameter values
> foreach (AdoNetAppenderParameter param in
> m_parameters)
> {
> param.Prepare(dbCmd);
> param.FormatValue(dbCmd, e);
> }
> // Execute the query
> dbCmd.ExecuteNonQuery();
> }
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)