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

Reply via email to