← Back to team overview

dhis2-users team mailing list archive

Re: (no subject)

 

Dear Lars,

Few data elements collects 12 figure values with 2 decimals (financial data). For the moment getting quarterly data from 13 centers. We'll try to find a workaround.
Thanks,
Subodha.


Date: Fri, 26 Apr 2013 08:57:02 +0200
From: larshelge@xxxxxxxxx
To: subodha.manoj@xxxxxxxxx
CC: dhis2-users@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Dhis2-users] (no subject)

Hi Subodha,
hard to say but my wild guess is that you have values in the datavalue table which are either extremely high, or have an extreme number of decimal points. 

The process fails when it tries to write an aggregated value to the aggregateddatavalue table, where the value is out of range for the column type of the "value" column: 

Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Out of range value for column 'value' at row 96



Lars

On Thu, Apr 25, 2013 at 8:46 PM, subodha manoj <subodha.manoj@xxxxxxxxx> wrote:

Dear all,

I face an issue with Datamart export. 

Server: 

Build revision: 9149 Build date:2013-03-27 13:41User agent:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:20.0) Gecko/20100101 Firefox/20.0External configuration directory:Not setEnvironment variable:DHIS2_HOMEDatabase type:MySQL

Java Opts:-Xms256m -Xmx1512m -XX:PermSize=128m -XX:MaxPermSize=512m -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManagerJava version:1.6.0_24Java vendor:Sun Microsystems Inc.

OS name:LinuxOS architecture:amd64OS version:3.2.0-29-genericServer date:2013-04-25 23:59Server memory:Mem Total in JVM: 846 Free in JVM: 403 Max Limit: 1344

CPU cores:4Tomcat log: 

* INFO  2013-04-25 07:54:05,856 Using periods: [[Monthly: Sat Dec 01 00:00:00 IST 2012 - Mon Dec 31 00:00:00 IST 2012], [Quarterly: Mon Oct 01 00:00:00 IST 2012 - Mon Dec 31 00:00:00 IST 2012]] (DataMartTask.java [taskScheduler-5])


* INFO  2013-04-25 07:54:06,159 Data mart export process started, number of CPU cores: 4, Mem Total in JVM: 622 Free in JVM: 389 Max Limit: 1344: 0:00:00.000 (Clock.java [taskScheduler-5])
* INFO  2013-04-25 07:54:06,162 [Level: INFO, category: DATAMART, time: Thu Apr 25 07:54:06 IST 2013, message: Data mart export process started] (InMemoryNotifier.java [taskScheduler-5])


* INFO  2013-04-25 07:54:07,206 Recreated temporary tables: 0:00:01.047 (Clock.java [taskScheduler-5])
* INFO  2013-04-25 07:54:07,206 Data elements: 1228, indicators: 294, periods: 2, org units: 1296: 0:00:01.047 (Clock.java [taskScheduler-5])


* INFO  2013-04-25 07:54:07,426 Retrieved meta-data objects, using periods: [[Quarterly: 2012-10-01 - 2012-12-31], [Monthly: 2012-12-01 - 2012-12-31]]: 0:00:01.267 (Clock.java [taskScheduler-5])
* INFO  2013-04-25 07:54:07,426 [Level: INFO, category: DATAMART, time: Thu Apr 25 07:54:07 IST 2013, message: Filtering meta-data] (InMemoryNotifier.java [taskScheduler-5])


* WARN  2013-04-25 07:54:07,565 Indicator is invalid: [Number of Dental Surgeons per 10,000 population] (DefaultExpressionService.java [taskScheduler-5])
* INFO  2013-04-25 07:54:07,716 Filtered objects: 0:00:01.557 (Clock.java [taskScheduler-5])


* INFO  2013-04-25 07:54:07,717 [Level: INFO, category: DATAMART, time: Thu Apr 25 07:54:07 IST 2013, message: Loading indicators] (InMemoryNotifier.java [taskScheduler-5])
* INFO  2013-04-25 07:54:07,727 Exploded indicator expressions: 0:00:01.568 (Clock.java [taskScheduler-5])


* INFO  2013-04-25 07:54:07,727 [Level: INFO, category: DATAMART, time: Thu Apr 25 07:54:07 IST 2013, message: Loading data elements] (InMemoryNotifier.java [taskScheduler-5])
* INFO  2013-04-25 07:54:12,094 Retrieved operands: 1493: 0:00:05.935 (Clock.java [taskScheduler-5])


* INFO  2013-04-25 07:54:12,095 [Level: INFO, category: DATAMART, time: Thu Apr 25 07:54:12 IST 2013, message: Loading periods] (InMemoryNotifier.java [taskScheduler-5])
* INFO  2013-04-25 07:54:12,101 Number of periods: 2: 0:00:05.942 (Clock.java [taskScheduler-5])


* INFO  2013-04-25 07:54:12,102 [Level: INFO, category: DATAMART, time: Thu Apr 25 07:54:12 IST 2013, message: Filtering data elements without data] (InMemoryNotifier.java [taskScheduler-5])
* INFO  2013-04-25 07:54:14,234 Number of operands with data: 487, Mem Total in JVM: 622 Free in JVM: 285 Max Limit: 1344: 0:00:08.075 (Clock.java [taskScheduler-5])


* INFO  2013-04-25 07:54:14,234 [Level: INFO, category: DATAMART, time: Thu Apr 25 07:54:14 IST 2013, message: Populating crosstabulation table] (InMemoryNotifier.java [taskScheduler-5])
* INFO  2013-04-25 07:54:25,438 Crosstab table columns: 489, rows: 0 (DefaultCrossTabService.java [SimpleAsyncTaskExecutor-98])


* INFO  2013-04-25 07:54:26,761 Crosstab table columns: 489, rows: 0 (DefaultCrossTabService.java [SimpleAsyncTaskExecutor-97])
* INFO  2013-04-25 07:54:27,003 Crosstab table columns: 489, rows: 1 (DefaultCrossTabService.java [SimpleAsyncTaskExecutor-100])


* INFO  2013-04-25 07:54:27,027 Crosstab table columns: 489, rows: 1 (DefaultCrossTabService.java [SimpleAsyncTaskExecutor-99])
* INFO  2013-04-25 07:54:27,027 Populated crosstab table, Mem Total in JVM: 624 Free in JVM: 385 Max Limit: 1344: 0:00:20.868 (Clock.java [taskScheduler-5])


* INFO  2013-04-25 07:54:27,030 Created aggregated data cache, number of indicator operands: 232, operands with data: 487: 0:00:20.871 (Clock.java [taskScheduler-5])
* INFO  2013-04-25 07:54:27,039 [Level: INFO, category: DATAMART, time: Thu Apr 25 07:54:27 IST 2013, message: Exporting data for data element data] (InMemoryNotifier.java [taskScheduler-5])


* INFO  2013-04-25 07:54:28,213 Data element export task done (DefaultDataElementDataMart.java [SimpleAsyncTaskExecutor-102])
* ERROR 2013-04-25 07:54:28,663 Unexpected error occurred in scheduled task. (TaskUtils.java [taskScheduler-5])


java.lang.RuntimeException: Exception during execution
    at org.hisp.dhis.system.util.ConcurrentUtils.waitForCompletion(ConcurrentUtils.java:54)
    at org.hisp.dhis.datamart.engine.DefaultDataMartEngine.export(DefaultDataMartEngine.java:348)


    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)


    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)


    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)


    at org.amplecode.quick.StatementInterceptor.intercept(StatementInterceptor.java:71)
    at sun.reflect.GeneratedMethodAccessor570.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
    at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610)


    at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:65)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)


    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
    at $Proxy105.export(Unknown Source)


    at org.hisp.dhis.system.scheduling.DataMartTask.run(DataMartTask.java:163)
    at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:53)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)


    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:165)


    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)


    at java.lang.Thread.run(Thread.java:679)
Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Failed to flush BatchHandler
    at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)


    at java.util.concurrent.FutureTask.get(FutureTask.java:111)
    at org.hisp.dhis.system.util.ConcurrentUtils.waitForCompletion(ConcurrentUtils.java:50)
    ... 33 more
Caused by: java.lang.RuntimeException: Failed to flush BatchHandler


    at org.amplecode.quick.batchhandler.AbstractBatchHandler.flush(AbstractBatchHandler.java:311)
    at org.hisp.dhis.datamart.dataelement.DefaultDataElementDataMart.exportDataValues(DefaultDataElementDataMart.java:217)


    at sun.reflect.GeneratedMethodAccessor521.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)


    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)


    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
    at org.springframework.aop.interceptor.AsyncExecutionInterceptor$1.call(AsyncExecutionInterceptor.java:80)


    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    ... 1 more
Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Out of range value for column 'value' at row 96


    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4094)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4028)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2490)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2651)


    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2677)
    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1748)
    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1665)


    at org.amplecode.quick.batchhandler.AbstractBatchHandler.flush(AbstractBatchHandler.java:295)
    ... 11 more

Cleared cash. 
Archived data values and tried to run the datamart to locate the data vulues causing the problem. But it still gives the same result. 




How to solve this problem ?

with regards,
Subodha.


_______________________________________________

Mailing list: https://launchpad.net/~dhis2-users

Post to     : dhis2-users@xxxxxxxxxxxxxxxxxxx

Unsubscribe : https://launchpad.net/~dhis2-users

More help   : https://help.launchpad.net/ListHelp





_______________________________________________
Mailing list: https://launchpad.net/~dhis2-users
Post to     : dhis2-users@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp 		 	   		  

References