History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: XPR-151
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Blocker Blocker
Assignee: Mateusz Prokopowicz
Reporter: Carsten Behring
Votes: 4
Watchers: 7
Operations

If you were logged in you would be able to see more operations.
xplanner

charts for Iteration Progress and Iteration Burn Down are empty

Created: 28/Oct/05 09:09 AM   Updated: 12/Mar/06 01:06 AM
Component/s: None
Affects Version/s: 0.7
Fix Version/s: 0.7

Time Tracking:
Not Specified

File Attachments: 1. File catalina.out (133 kb)
2. Text File stdout_20051107.log (79 kb)
3. Text File stdout_20051128.log (66 kb)

Image Attachments:

1. screenshot-burndown.jpg
(75 kb)

2. screenshot-velocity.jpg
(48 kb)

3. xplanner.JPG
(74 kb)
Issue Links:
Duplicate
 
Supercedes
 

JDK version and platform: j2sdk1.4.2_09 on linux
Database: mysql
Application server: jakarta-tomcat-4.1.31


 Description  « Hide
The nighty charts for the progress iteration and interation burdown do not have any data points (except for first day)
(see screenshot). the velocity graph works fine.

I have an exception in the log, whcih might be related.

2005-10-27 15:18:40,224 [Thread-2] WARN async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@9a98b9 -- AP
PARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
2005-10-27 15:18:40,228 [Thread-2] WARN async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@9a98b9 -- AP
PARENT DEADLOCK!!! Complete Status: [num_managed_threads: 3, num_active: 3; activeTasks: com.mchange.v2.resourcepool.BasicResourcePool$5@4f49ec (com.mchange.
v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1), com.mchange.v2.resourcepool.BasicResourcePool$5@17e3ec1 (com.mchange.v2.async.ThreadPoolAsynchronousRun
ner$PoolThread-#2), com.mchange.v2.resourcepool.BasicResourcePool$5@14a2c23 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0); pendingTasks:
com.mchange.v2.resourcepool.BasicResourcePool$5@97e1c8, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@168471d, com.mchange.v2.c3p0.stmt.GooGooSta
tementCache$2@114e798, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@170c240, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@1e12dd4, com.mchange.v2.c3p0.
stmt.GooGooStatementCache$2@87ef9a, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@838788, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@13719fd, com.mcha
nge.v2.c3p0.stmt.GooGooStatementCache$2@8b4007, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@189200, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@11943
2d, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@18969fa, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@8cac42, com.mchange.v2.c3p0.stmt.GooGooStatement
Cache$2@1815ddc, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@391d71, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@1bbfa58, com.mchange.v2.c3p0.stmt.Go
oGooStatementCache$2@30c712, com.mchange.v2.c3p0.stmt.GooGooStatementCache$2@5d6ed7]
2005-10-28 00:00:00,244 [WorkerThread-0] ERROR hibernate.LazyInitializationException - Failed to lazily initialize a collection - no session or session was c
losed
net.sf.hibernate.LazyInitializationException: Failed to lazily initialize a collection - no session or session was closed
        at net.sf.hibernate.collection.PersistentCollection.initialize(PersistentCollection.java:214)
        at net.sf.hibernate.collection.PersistentCollection.read(PersistentCollection.java:71)
        at net.sf.hibernate.collection.Set.isEmpty(Set.java:114)
        at com.technoetic.xplanner.util.CollectionUtils.sum(CollectionUtils.java:10)
        at com.technoetic.xplanner.domain.Iteration.getSumOfStoryProperty(Iteration.java:248)
        at com.technoetic.xplanner.domain.Iteration.getCurrentEstimatedTaskHours(Iteration.java:137)
        at com.technoetic.xplanner.domain.Iteration.getEstimatedHours(Iteration.java:132)
        at com.technoetic.xplanner.actions.DataSamplerImpl.generateDataSamples(DataSamplerImpl.java:24)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:284)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:155)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:174)
        at $Proxy0.generateDataSamples(Unknown Source)
        at com.technoetic.xplanner.charts.DataSamplingJob.generateDataSamples(DataSamplingJob.java:61)
        at com.technoetic.xplanner.charts.DataSamplingJob.executeInternal(DataSamplingJob.java:39)
        at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:66)
        at org.quartz.core.JobRunShell.run(JobRunShell.java:141)
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:281)
2005-10-28 00:00:00,254 [WorkerThread-0] ERROR scheduler - Job (xplanner.datasamplingJob threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: net.sf.hibernate.LazyInitializationException: Failed to lazily initia
lize a collection - no session or session was closed]
        at org.quartz.core.JobRunShell.run(JobRunShell.java:145)
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:281)
* Nested Exception (Underlying Cause) ---------------
net.sf.hibernate.LazyInitializationException: Failed to lazily initialize a collection - no session or session was closed
        at net.sf.hibernate.collection.PersistentCollection.initialize(PersistentCollection.java:214)
        at net.sf.hibernate.collection.PersistentCollection.read(PersistentCollection.java:71)
        at net.sf.hibernate.collection.Set.isEmpty(Set.java:114)
        at com.technoetic.xplanner.util.CollectionUtils.sum(CollectionUtils.java:10)
        at com.technoetic.xplanner.domain.Iteration.getSumOfStoryProperty(Iteration.java:248)
        at com.technoetic.xplanner.domain.Iteration.getCurrentEstimatedTaskHours(Iteration.java:137)
        at com.technoetic.xplanner.domain.Iteration.getEstimatedHours(Iteration.java:132)
        at com.technoetic.xplanner.actions.DataSamplerImpl.generateDataSamples(DataSamplerImpl.java:24)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:284)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:155)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:174)
        at $Proxy0.generateDataSamples(Unknown Source)
        at com.technoetic.xplanner.charts.DataSamplingJob.generateDataSamples(DataSamplingJob.java:61)
        at com.technoetic.xplanner.charts.DataSamplingJob.executeInternal(DataSamplingJob.java:39)
        at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:66)
        at org.quartz.core.JobRunShell.run(JobRunShell.java:141)
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:281)
2005-10-28 00:00:00,482 [WorkerThread-2] INFO app.VelocityEngine - ResourceManager : found com/technoetic/xplanner/mail/velocity/email_notifications.vm with
 loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader


 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Jacques Morel - 05/Nov/05 04:24 PM
Carsten,

Would it be possible for you to attach you entire log? Were you using b1? Could you upgrade to b2 and verify it still happens.

Thanks

Jacques

David Hilowitz - 08/Nov/05 10:30 AM
Here is a copy of our log. We are getting the same issue. We are running b1. We are afraid to upgrade to b2 for fear that it will wipe our database. We will upgrade once we are sure there is a fix. Thanks, David

David Hilowitz - 08/Nov/05 10:32 AM
These are our sad Iteration Progress and Iteration Burn Down graphs

David Hilowitz - 08/Nov/05 10:34 AM
And here is delightfully functional Project Velocity graph.

Erik Hope - 11/Nov/05 11:49 AM
I'm experiencing exactly the same issue on Windows but I do not have any errors in my logs.

JDK version and platform: j2sdk1.4.2_05 on Windows2000 server
Database: mysql
Application server: jakarta-tomcat-5.0.30
Xplanner version: 0.7b2

Jacques Morel - 24/Nov/05 01:33 AM
With the current head (rev 854) I am still seeing deadlock issues.
Take a look at http://forum.hibernate.org/viewtopic.php?t=947246&highlight=apparent+deadlock+c3p0
It seems to indicate to disable the statement cache by setting max_statements=0

Jacques Morel - 26/Nov/05 02:41 AM
setting max_statements=0 causes all sort of starvation.
Erick, David, Carsten, could you try to switch to dhcp? In the xplanner.properties dhcp is right before the c3p0 properties. Just comment out the c3p0 and uncomment the dhcp properties.
Let me know if that solves your problem.

Mark Anderson - 02/Dec/05 05:32 AM
I am also seeing this issue with 0.7b3. I have attached my log file (catalina.out).
I have also changed my xplanner properties to use dbcp and will see what happens overnight.

JDK: 1.5.0_04 on RHEL3
Database: MySQL 3.23.58-16.RHEL3.1
App server: Tomcat 5.5.9
Xplanner: 0.7b3

David Hilowitz - 02/Dec/05 10:16 AM
Here is my latest log file.

David Hilowitz - 02/Dec/05 10:17 AM
We are still having problems. We are running 0.7b1. We switched to dbcp as you said, but the error still occurs at midnight every night. Here is what our conf file looke like:

### Other Hibernate configurations ###

#hibernate.show_sql=true
hibernate.cache.use_query_cache=true

# connection pool

hibernate.dbcp.maxActive=100
hibernate.dbcp.whenExhaustedAction=1
hibernate.dbcp.maxWait=120000
hibernate.dbcp.maxIdle=10
hibernate.dbcp.validationQuery=select * from identifier

## prepared statement cache

hibernate.dbcp.ps.maxActive=100
hibernate.dbcp.ps.whenExhaustedAction=1
hibernate.dbcp.ps.maxWait=120000
hibernate.dbcp.ps.maxIdle=100

# Documented in c3p0-0.9.0/doc/index.html#appendix_d
#hibernate.c3p0.min_size=20
#hibernate.c3p0.max_size=100
#hibernate.c3p0.timeout=1800
#hibernate.c3p0.max_statements=250
#hibernate.c3p0.acquire_increment=5
#hibernate.c3p0.idle_test_period=300
#hibernate.c3p0.validate=
#c3p0.preferredTestQuery=select * from identifier



Jacques Morel - 03/Dec/05 12:32 AM
Thanks guys. This is extreme helpful. Hopefully we will be able to nail this one soon. BTW what is the frequency of the error: no data, some data, most data?

David Hilowitz - 05/Dec/05 08:36 AM
The log file above (stdout_20051128.log ) is my log file. I stopped and started Tomcat and let it run for three days.

Håkon Bingen - 07/Dec/05 01:46 AM
I think this is due to a bug in com.technoetic.xplanner.charts.DataSamplerData.getLatestDate. The attached catalina.out logfile from contains an classcast exception. This exception occurs when java.sql.Date and java.sql.Timestamp is compared.

When I modified the method and converted the two dates to int and compared them the charts was displayed correctly.