帆软更新数据集报错 如下。
数据集可以正常预览。 但是更新数据集就报错
业务包: 推广运营类
数据集名: 推广最终数据集
************************************************
2022-01-05 17:34:36 INFO [LockFacade] wait(1000) EXCLUSIVE Acquiring for db,dummyT_814D63
2022-01-05 17:34:36 INFO [LockFacade] wait(1000) EXCLUSIVE Acquired for db,dummyT_814D63
2022-01-05 17:34:36 INFO dummyT_814D63.super slice size: 100000
2022-01-05 17:34:36 WARN Caught error around row 0
2022-01-05 17:34:36 WARN receive cancel signal, cancel append task(maybe error in jdbc thread baseTable-load-pool-13-thread-2)
2022-01-05 17:34:36 INFO cancel wait cost 1ms
2022-01-05 17:34:36 ERROR catch exception
com.fr.engine.exception.SqlEngineException: 错误代码:62400001connection holder is null
at com.fr.engine.model.AbstractDirectResultSetRowIterator.open(AbstractDirectResultSetRowIterator.java:72)
at com.finebi.spider.db.table.sync.loading.RowIteratorAdapter.open(RowIteratorAdapter.java:19)
at com.finebi.spider.db.table.sync.loading.TableLoadImpl.writerDataToTable(TableLoadImpl.java:223)
at com.finebi.spider.db.table.sync.loading.TableLoadImpl.loadData(TableLoadImpl.java:113)
at com.finebi.spider.client.TableOperateImpl.load(TableOperateImpl.java:200)
at com.fr.engine.bi.config.scheduler.DefaultTableUpdateManager.load(DefaultTableUpdateManager.java:116)
at com.fr.engine.distribute.local.timerjob.task.load.FullLoad.load(FullLoad.java:74)
at com.finebi.fun.extension.UpdateLoadExtension.load(UpdateLoadExtension.java:35)
at com.fr.engine.distribute.local.timerjob.task.load.AbstractLoad.loadProcess(AbstractLoad.java:127)
at com.fr.engine.distribute.local.timerjob.task.load.AbstractLoad.loadWithResult(AbstractLoad.java:76)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
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: java.sql.SQLException: connection holder is null
at com.fr.third.alibaba.druid.pool.DruidPooledConnection.checkStateInternal(DruidPooledConnection.java:1134)
at com.fr.third.alibaba.druid.pool.DruidPooledConnection.checkState(DruidPooledConnection.java:1127)
at com.fr.third.alibaba.druid.pool.DruidPooledConnection.createStatement(DruidPooledConnection.java:629)
at com.fr.data.core.db.dialect.base.key.create.executequery.DialectExecutePreparedQueryExecutor.execute(Unknown Source)
at com.fr.data.core.db.dialect.base.key.create.executequery.DialectExecutePreparedQueryExecutor.execute(Unknown Source)
at com.fr.data.core.db.dialect.AbstractDialect.execute(Unknown Source)
at com.fr.data.core.db.dialect.DefaultDialect.executeQuery(Unknown Source)
at com.fr.engine.model.AbstractDirectResultSetRowIterator.open(AbstractDirectResultSetRowIterator.java:61)
... 13 more
Caused by: java.sql.SQLException: Streaming result set com.mysql.jdbc.RowDataDynamic@7a3344af is still active. No statements may be issued when any streaming result sets are open and in use on a given connection. Ensure that you have called .close() on any active streaming result sets before attempting more queries.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:868)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:864)
at com.mysql.jdbc.MysqlIO.checkForOutstandingStreamingData(MysqlIO.java:3214)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2450)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2680)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2483)
at com.mysql.jdbc.StatementImpl.executeSimpleNonQuery(StatementImpl.java:1465)
at com.mysql.jdbc.StatementImpl.setupStreamingTimeout(StatementImpl.java:726)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1939)
at com.fr.third.alibaba.druid.pool.DruidPooledPreparedStatement.executeQuery(DruidPooledPreparedStatement.java:226)
... 18 more
2022-01-05 17:34:36 INFO delete dummy table:dummyT_814D63
2022-01-05 17:34:36 INFO [LockFacade] Released EXCLUSIVE lock for db,dummyT_814D63
2022-01-05 17:34:36 ERROR tableId: 814d63ca2165e464,table: T_814D63, name: 推广最终数据集 , package: 推广运营类。请检查SQL或数据库配置
com.fr.engine.exception.DatabaseException: 请检查SQL或数据库配置
at com.fr.engine.distribute.local.timerjob.util.UpdateExceptionUtils.formatException(UpdateExceptionUtils.java:24)
at com.fr.engine.distribute.local.timerjob.task.load.AbstractLoad.loadWithResult(AbstractLoad.java:82)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
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)
数据集sql后面有个分号; 将分号去掉后数据集恢复正常
SELECT
bpc.business_date 数据日期,
bps.NAME 店铺名,
CONCAT( bpp.NAME, '-', bps.NAME ) 完整店铺,
pc.NAME 渠道名,
case pc.NAME when '海投' then '智能推广'
when '京速推' then '智能推广'
when '万相台' then '智能推广'
when '品销宝' then '智能推广'
else '竞价推广' end 投放类,
bpp.NAME 平台名,
pcy.NAME 品类名,
bi.plan 计划名称,
bi.unit 单元,
bi.direct 定向,
bpc.make_deal_amount AS 15天成交金额,
bpc.cost AS 15天消耗,
bpc.make_deal_count AS 15天成交量,
bpc.click_count AS 15天点击量,
bpc.direct_deal_amount AS 15天直接成交金额,
bpc.direct_deal_count AS 15天直接成交笔数
FROM
base_promotion_content bpc
LEFT JOIN base_promotion_info bi ON bpc.fk_base_promotion_info_id = bi.id
LEFT JOIN base_platform_shop bps ON bi.shop_id = bps.id
LEFT JOIN base_promotion_channel pc ON bi.fk_base_promotion_channel_id = pc.id
LEFT JOIN base_promotion_platform bpp ON pc.fk_base_promotion_platform_id = bpp.id
LEFT JOIN promotion_category pcy ON bps.fk_promotion_category_id = pcy.id
WHERE
bpc.delete_status = 1
AND bi.id IS NOT NULL
AND bpc.date_type = 15;