[ https://issues.apache.org/jira/browse/LOG4NET-538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16150148#comment-16150148 ]
Dominik Psenner commented on LOG4NET-538: ----------------------------------------- I just refactored the method. The second patch changes the behavior to first clear and add all database command parameters. Then the database command is prepared. After that it iterates over all log events and for every log event the database command parameter values are updated and the database command is executed. This should be significantly faster because the command is prepared only once even for thousands of log events. Would you please verify that the head of [feature/fix-LOG4NET-538|https://github.com/apache/logging-log4net/tree/feature/fix-LOG4NET-538] works with both your test environments? > AdoNetAppender to PostgreSQL > ---------------------------- > > Key: LOG4NET-538 > URL: https://issues.apache.org/jira/browse/LOG4NET-538 > Project: Log4net > Issue Type: Bug > Components: Appenders > Affects Versions: 1.2.15 > Environment: C# > Reporter: Cristian Margescu > Labels: patch > > I am using the AdoNetAppender to log audits to the database. I was using > until some time the 1.2.13 version with a configuration for MSSQL or > PostgreSQL which inserted practically data as json strings that will later be > interpreted by another tool using the following appender configuration. > EX: <appender name="NpgsqlAppender" type="log4net.Appender.AdoNetAppender"> > <filter type="log4net.Filter.LevelRangeFilter"> > <levelMin value="AUDIT" /> > <levelMax value="AUDIT" /> > </filter> > <bufferSize value="1"/> > <connectionType > value="Npgsql.NpgsqlConnection, Npgsql" /> > <connectionString > value="Server={myServer};Port=5432;Database={database};User > Id={myuser};Password={mypassword}" /> > <commandText value="INSERT INTO audit (message) VALUES (@message);" /> > <reconnectOnError value="true" /> > <useTransactions value="false"/> > <parameter> > <parameterName value="@message" /> > <dbType value="String" /> > <layout type="log4net.Layout.PatternLayout" > > <conversionPattern value="%message"/> > </layout> > </parameter> > </appender> > It worked great until I have updated to 1.2.15 and then we have noticed that > the PosgreSQL appender did not worked any more. After doing some research and > testing I have narrowed it down to the AdoNetAppender > that probably has a problem with the parameters because it shows a PG error > 47203 as column "message" not found. > -- This message was sent by Atlassian JIRA (v6.4.14#64029)