Hello,
(using wso2 EI-6.4.0)
Starting analytics worker log lot of errors about several similar table
initialization -errors are repeated every 2 minutes - it talks about a key
which is too long.
Here is an log example for MediatorStatAgg_DAYS table, same error logs occur
for
MediatorStatAgg_YEARS
MediatorStatAgg_HOURS
MediatorStatAgg_MINUTES
MediatorStatAgg_SECONDS
note: I never had this problem when we tested with postgres dbs, strange...
Here are: the only thing I have changed in EI_Analytics_StatApp.siddhi :
@store(type = 'rdbms', datasource = 'EI_ANALYTICS',
field.length="configData:18000") [18000 instead of default 6000]
and add the convert time function at the end of the file :
from TablePurgingTriggerStream
select convert(time:dateSub(triggered_time, 2, 'week'), 'long') as purgingTime
delete ConfigEntryTable
on ConfigEntryTable.eventTimestamp < purgingTime;
from TablePurgingTriggerStream
select convert(time:dateSub(triggered_time, 2, 'week'), 'long') as purgingTime
delete ESBEventTable
on ESBEventTable.eventTimestamp < purgingTime;
ERROR {org.wso2.siddhi.core.table.Table} - Error on 'EI_Analytics_StatApp'.
Failed to initialize store for table name 'MediatorStatAgg_DAYS': Unable to
initialize table 'MediatorStatAgg_DAYS': Specified key was too long; max key
length is 3072 bytes Error while connecting to Table 'MediatorStatAgg_DAYS',
will retry in '5 sec'.
org.wso2.siddhi.core.exception.ConnectionUnavailableException: Failed to
initialize store for table name 'MediatorStatAgg_DAYS': Unable to initialize
table 'MediatorStatAgg_DAYS': Specified key was too long; max key length is
3072 bytes
at
org.wso2.extension.siddhi.store.rdbms.RDBMSEventTable.connect(RDBMSEventTable.java:882)
at org.wso2.siddhi.core.table.Table.connectWithRetry(Table.java:364)
at
org.wso2.siddhi.core.SiddhiAppRuntime.startWithoutSources(SiddhiAppRuntime.java:400)
at org.wso2.siddhi.core.SiddhiAppRuntime.start(SiddhiAppRuntime.java:375)
at
org.wso2.carbon.stream.processor.core.internal.StreamProcessorService.deploySiddhiApp(StreamProcessorService.java:224)
at
org.wso2.carbon.stream.processor.core.internal.StreamProcessorDeployer.deploySiddhiQLFile(StreamProcessorDeployer.java:93)
at
org.wso2.carbon.stream.processor.core.internal.StreamProcessorDeployer.deploy(StreamProcessorDeployer.java:306)
at
org.wso2.carbon.deployment.engine.internal.DeploymentEngine.lambda$deployArtifacts$0(DeploymentEngine.java:291)
at java.util.ArrayList.forEach(ArrayList.java:1257)
at
org.wso2.carbon.deployment.engine.internal.DeploymentEngine.deployArtifacts(DeploymentEngine.java:282)
at
org.wso2.carbon.deployment.engine.internal.RepositoryScanner.sweep(RepositoryScanner.java:112)
at
org.wso2.carbon.deployment.engine.internal.RepositoryScanner.scan(RepositoryScanner.java:68)
at
org.wso2.carbon.deployment.engine.internal.DeploymentEngine.start(DeploymentEngine.java:121)
at
org.wso2.carbon.deployment.engine.internal.DeploymentEngineListenerComponent.onAllRequiredCapabilitiesAvailable(DeploymentEngineListenerComponent.java:216)
at
org.wso2.carbon.kernel.internal.startupresolver.StartupComponentManager.lambda$notifySatisfiableComponents$7(StartupComponentManager.java:266)
at java.util.ArrayList.forEach(ArrayList.java:1257)
at
org.wso2.carbon.kernel.internal.startupresolver.StartupComponentManager.notifySatisfiableComponents(StartupComponentManager.java:252)
at
org.wso2.carbon.kernel.internal.startupresolver.StartupOrderResolver$1.run(StartupOrderResolver.java:204)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Caused by: org.wso2.extension.siddhi.store.rdbms.exception.RDBMSTableException:
Unable to initialize table 'MediatorStatAgg_DAYS': Specified key was too long;
max key length is 3072 bytes
at
org.wso2.extension.siddhi.store.rdbms.RDBMSEventTable.createTable(RDBMSEventTable.java:1125)
at
org.wso2.extension.siddhi.store.rdbms.RDBMSEventTable.connect(RDBMSEventTable.java:874)
... 19 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified
key was too long; max key length is 3072 bytes
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
at com.mysql.jdbc.Util.getInstance(Util.java:408)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:944)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3973)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3909)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2527)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2680)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2484)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1858)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1197)
at
com.zaxxer.hikari.proxy.PreparedStatementProxy.execute(PreparedStatementProxy.java:44)
at
com.zaxxer.hikari.proxy.HikariPreparedStatementProxy.execute(HikariPreparedStatementProxy.java)
at
org.wso2.extension.siddhi.store.rdbms.RDBMSEventTable.executeDDQueries(RDBMSEventTable.java:1159)
at
org.wso2.extension.siddhi.store.rdbms.RDBMSEventTable.createTable(RDBMSEventTable.java:1120)
... 20 more
[2019-02-19 10:04:09,207] ERROR {org.wso2.siddhi.core.table.Table} - Error on
'EI_Analytics_StatApp'. Failed to initialize store for table name
'MediatorStatAgg_MONTHS': Unable to initialize table 'MediatorStatAgg_MONTHS':
Specified key was too long; max key length is 3072 bytes Error while connecting
to Table 'MediatorStatAgg_MONTHS', will retry in '5 sec'.
org.wso2.siddhi.core.exception.ConnectionUnavailableException: Failed to
initialize store for table name 'MediatorStatAgg_MONTHS': Unable to initialize
table 'MediatorStatAgg_MONTHS': Specified key was too long; max key length is
3072 bytes
at
org.wso2.extension.siddhi.store.rdbms.RDBMSEventTable.connect(RDBMSEventTable.java:882)
In the DB I can see
> describe ESBStatAgg_DAYS;
+--------------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------------------+--------------+------+-----+---------+-------+
| AGG_TIMESTAMP | bigint(20) | NO | PRI | NULL | |
| AGG_EVENT_TIMESTAMP | bigint(20) | NO | PRI | NULL | |
| metaTenantId | int(11) | NO | PRI | NULL | |
| componentId | varchar(254) | NO | PRI | NULL | |
| componentName | varchar(254) | NO | PRI | NULL | |
| componentType | varchar(254) | NO | PRI | NULL | |
| entryPoint | varchar(254) | NO | PRI | NULL | |
| AGG_LAST_EVENT_TIMESTAMP | bigint(20) | YES | | NULL | |
| eventTimestamp | bigint(20) | YES | | NULL | |
| AGG_SUM_duration | bigint(20) | YES | | NULL | |
| AGG_COUNT | bigint(20) | YES | | NULL | |
| AGG_MIN_duration | bigint(20) | YES | | NULL | |
| AGG_MAX_duration | bigint(20) | YES | | NULL | |
| AGG_SUM_faultCount | bigint(20) | YES | | NULL | |
+--------------------------+--------------+------+-----+---------+-------+
Thanks,
Bernard
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev