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

Dmitriy Sorokin commented on IGNITE-12764:
------------------------------------------

The stacktrace of error caused in 2.8.0 is below. See that it happens on call 
of extractArgsValues method, which was not called in 2.7.6 in same case.
{noformat}
[2020-03-31 
00:28:06,973][ERROR][client-connector-#69%sqltests.Ignite12764Test0%][JdbcRequestHandler]
 Failed to execute batch query [qry=SqlFieldsQuery [sql=insert INTO  
city1(id,name,name1) VALUES(?,?,RANDOM_UUID()), args=null, collocated=false, 
timeout=0, enforceJoinOrder=false, distributedJoins=false, 
replicatedOnly=false, lazy=false, schema=PUBLIC, updateBatchSize=1]]
javax.cache.CacheException: class org.apache.ignite.IgniteCheckedException: null
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.streamBatchedUpdateQuery(GridQueryProcessor.java:2525)
        at 
org.apache.ignite.internal.processors.odbc.jdbc.JdbcRequestHandler.executeBatchedQuery(JdbcRequestHandler.java:994)
        at 
org.apache.ignite.internal.processors.odbc.jdbc.JdbcRequestHandler.executeBatch(JdbcRequestHandler.java:927)
        at 
org.apache.ignite.internal.processors.odbc.jdbc.JdbcRequestHandler.executeBatchOrdered(JdbcRequestHandler.java:413)
        at 
org.apache.ignite.internal.processors.odbc.jdbc.JdbcRequestHandler.dispatchBatchOrdered(JdbcRequestHandler.java:392)
        at 
org.apache.ignite.internal.processors.odbc.jdbc.JdbcRequestHandler.doHandle(JdbcRequestHandler.java:330)
        at 
org.apache.ignite.internal.processors.odbc.jdbc.JdbcRequestHandler.handle(JdbcRequestHandler.java:247)
        at 
org.apache.ignite.internal.processors.odbc.ClientListenerNioListener.onMessage(ClientListenerNioListener.java:195)
        at 
org.apache.ignite.internal.processors.odbc.ClientListenerNioListener.onMessage(ClientListenerNioListener.java:49)
        at 
org.apache.ignite.internal.util.nio.GridNioFilterChain$TailFilter.onMessageReceived(GridNioFilterChain.java:279)
        at 
org.apache.ignite.internal.util.nio.GridNioFilterAdapter.proceedMessageReceived(GridNioFilterAdapter.java:109)
        at 
org.apache.ignite.internal.util.nio.GridNioAsyncNotifyFilter$3.body(GridNioAsyncNotifyFilter.java:97)
        at 
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120)
        at 
org.apache.ignite.internal.util.worker.GridWorkerPool$1.run(GridWorkerPool.java:70)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: class org.apache.ignite.IgniteCheckedException: null
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuery(GridQueryProcessor.java:2942)
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.streamBatchedUpdateQuery(GridQueryProcessor.java:2518)
        ... 16 more
Caused by: java.lang.NullPointerException
        at 
org.apache.ignite.internal.processors.query.h2.dml.UpdatePlan.extractArgsValues(UpdatePlan.java:465)
        at 
org.apache.ignite.internal.processors.query.h2.dml.UpdatePlan.createRows(UpdatePlan.java:412)
        at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.streamQuery0(IgniteH2Indexing.java:702)
        at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.streamBatchedUpdateQuery(IgniteH2Indexing.java:673)
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor$5.applyx(GridQueryProcessor.java:2520)
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor$5.applyx(GridQueryProcessor.java:2518)
        at 
org.apache.ignite.internal.util.lang.IgniteOutClosureX.apply(IgniteOutClosureX.java:36)
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuery(GridQueryProcessor.java:2919)
        ... 17 more
{noformat}

> Regression: Thin JDBC streaming fails/BatchUpdateException if function is used
> ------------------------------------------------------------------------------
>
>                 Key: IGNITE-12764
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12764
>             Project: Ignite
>          Issue Type: Bug
>          Components: sql
>    Affects Versions: 2.8
>            Reporter: Ilya Kasnacheev
>            Assignee: Dmitriy Sorokin
>            Priority: Blocker
>             Fix For: 2.8.1
>
>         Attachments: SqlMain.java
>
>
> insert INTO  city1(id,name,name1) VALUES(?,?,RANDOM_UUID())
> happily worked in 2.7.6 but will fail on 2.8.0 with:
> Exception in thread "main" java.sql.BatchUpdateException: class 
> org.apache.ignite.IgniteCheckedException: null
>       at 
> org.apache.ignite.internal.jdbc.thin.JdbcThinConnection$StreamState.readResponses(JdbcThinConnection.java:1364)
>       at java.base/java.lang.Thread.run(Thread.java:834)
> Suspected reason is that function RANDOM_UUID() is not processed correctly 
> here. Column type does not matter between UUID and VARCHAR.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to