[ https://issues.apache.org/jira/browse/LOG4J2-2762?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17018614#comment-17018614 ]
ASF subversion and git services commented on LOG4J2-2762: --------------------------------------------------------- Commit b9ee8a65b4d753a9231af14bcf51e16abf2e4efe in logging-log4j2's branch refs/heads/release-2.x from Gary Gregory [ https://gitbox.apache.org/repos/asf?p=logging-log4j2.git;h=b9ee8a6 ] [LOG4J2-2762] [JDBC] MS-SQL Server JDBC driver throws SQLServerException when inserting a null value for a VARBINARY column. > [JDBC] MS-SQL Server JDBC driver throws SQLServerException when inserting a > null value for a VARBINARY column > ------------------------------------------------------------------------------------------------------------- > > Key: LOG4J2-2762 > URL: https://issues.apache.org/jira/browse/LOG4J2-2762 > Project: Log4j 2 > Issue Type: New Feature > Components: JDBC > Reporter: Gary D. Gregory > Assignee: Gary D. Gregory > Priority: Major > > If you use a ColumnMapping element for a VARBINARY column and a runtime value > for that column, the MS-SQL Server JDBC driver throws an exception: > {noformat} > com.microsoft.sqlserver.jdbc.SQLServerException: Implicit conversion from > data type nvarchar to varbinary is not allowed. Use the CONVERT function to > run this query. > at > com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:262) > at > com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1624) > at > com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:594) > at > com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:524) > at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7194) > at > com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2979) > at > com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:248) > at > com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:223) > at > com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeUpdate(SQLServerPreparedStatement.java:473) > at > org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager.writeInternal(JdbcDatabaseManager.java:854) > at > org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager.writeThrough(JdbcDatabaseManager.java:887) > at > org.apache.logging.log4j.core.appender.db.AbstractDatabaseManager.write(AbstractDatabaseManager.java:264) > at > org.apache.logging.log4j.core.appender.db.AbstractDatabaseAppender.append(AbstractDatabaseAppender.java:110) > at > org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156) > at > org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129) > at > org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120) > at > org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84) > at > org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:543) > at > org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:502) > at > org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:485) > at > org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:460) > at > org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:82) > at org.apache.logging.log4j.core.Logger.log(Logger.java:161) > at > org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2198) > at > org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2152) > at > org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2135) > at > org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1836) > at > org.apache.logging.log4j.spi.AbstractLogger.info(AbstractLogger.java:1290) > {noformat} > Where the column is defined as: > {noformat} > body VARBINARY(4096) NULL DEFAULT NULL {noformat} > Tested with: > {code:xml} > <dependency> > <groupId>com.microsoft.sqlserver</groupId> > <artifactId>mssql-jdbc</artifactId> > <version>7.4.1.jre8</version> > </dependency> > {code} > Microsoft SQL Server Developer (64-bit) 14.0.1000.169 > * Windows Server 2019 Standard (10.0) > * English (United States) > * SQL_Latin1_General_CP1_CI_AS > * Clustered false > * HADR false > * XTP true -- This message was sent by Atlassian Jira (v8.3.4#803005)