[Building Sakai] velocity deadlocks in hashmap

Joshua Swink joshua.swink at gmail.com
Fri Jan 10 15:55:49 PST 2014


If I wanted to switch it to use 1.6.4 and test it, do you know how I would
modify the POMs?

Josh


On Fri, Jan 10, 2014 at 2:59 PM, Matthew Jones <matthew at longsight.com>wrote:

> I created issue https://jira.sakaiproject.org/browse/SAK-25537 to track
> this. I'd consider it a blocker for 10. OSP seems to me like it would be
> the trickiest part. We may want to upgrade to a newer version but at least
> this one.
>
>
>
> On Fri, Jan 10, 2014 at 5:50 PM, Matthew Jones <matthew at longsight.com>wrote:
>
>> Yea, interesting observation. I didn't know that velocity was upgraded to
>> avoid this deadlock, that part would have been nice to have in this jar
>> description.
>>
>> Frameworks aren't in shared, so it looks like each tool is "really free"
>> to use whatever version it wants. And some of them are still on old
>> versions. Actually surprisingly enough half of them, the majority as you
>> noticed (1.3.1) in osp, but still some 1.6.3 versions in other tools.
>>
>> In 2.9.3 and trunk the counts are identical these are the counts of each
>> jar
>>
>>      19 velocity-1.3.1.jar
>>       1 velocity-1.4.jar
>>       7 velocity-1.6.3.jar
>>      26 velocity-1.6.4.jar
>>
>> find . -name "*velocity-1*.jar" | awk -F/ '{print $NF, $3}' | sort | uniq
>>
>> velocity-1.3.1.jar osp-common-component
>> velocity-1.3.1.jar osp-common-tool
>> velocity-1.3.1.jar osp-glossary-component
>> velocity-1.3.1.jar osp-glossary-tool
>> velocity-1.3.1.jar osp-integration-component
>> velocity-1.3.1.jar osp-matrix-component
>> velocity-1.3.1.jar osp-matrix-tool
>> velocity-1.3.1.jar osp-portal-tool
>> velocity-1.3.1.jar osp-presentation-component
>> velocity-1.3.1.jar osp-presentation-tool
>> velocity-1.3.1.jar osp-warehouse-component
>> velocity-1.3.1.jar osp-wizard-components
>> velocity-1.3.1.jar osp-wizard-tool
>> velocity-1.3.1.jar sakai-metaobj-component
>> velocity-1.3.1.jar sakai-metaobj-tool
>> velocity-1.3.1.jar sakai-warehouse-component
>> velocity-1.3.1.jar sakai-web-portlet
>> velocity-1.3.1.jar sakai-web-portlet-basiclti
>> velocity-1.3.1.jar xsl-portal
>> velocity-1.4.jar sakai-rwiki-tool
>> velocity-1.6.3.jar login-pack
>> velocity-1.6.3.jar login-render
>> velocity-1.6.3.jar osp-portal
>> velocity-1.6.3.jar portal
>> velocity-1.6.3.jar portal-render
>> velocity-1.6.3.jar sakai-search-tool
>> velocity-1.6.3.jar xsl-portal
>> velocity-1.6.4.jar access
>> velocity-1.6.4.jar basiclti-admin-tool
>> velocity-1.6.4.jar sakai-alias-tool
>> velocity-1.6.4.jar sakai-announcement-pack
>> velocity-1.6.4.jar sakai-announcement-tool
>> velocity-1.6.4.jar sakai-archive-tool
>> velocity-1.6.4.jar sakai-assignment-tool
>> velocity-1.6.4.jar sakai-authz-tool
>> velocity-1.6.4.jar sakai-calendar-pack
>> velocity-1.6.4.jar sakai-calendar-tool
>> velocity-1.6.4.jar sakai-chat-tool
>> velocity-1.6.4.jar sakai-citations-servlet
>> velocity-1.6.4.jar sakai-citations-tool
>> velocity-1.6.4.jar sakai-content-tool
>> velocity-1.6.4.jar sakai-mailarchive-tool
>> velocity-1.6.4.jar sakai-memory-tool
>> velocity-1.6.4.jar sakai-message-tool
>> velocity-1.6.4.jar sakai-news-tool
>> velocity-1.6.4.jar sakai-presence-tool
>> velocity-1.6.4.jar sakai-rights-tool
>> velocity-1.6.4.jar sakai-site-manage-link-helper
>> velocity-1.6.4.jar sakai-site-manage-tool
>> velocity-1.6.4.jar sakai-site-tool
>> velocity-1.6.4.jar sakai-user-tool
>> velocity-1.6.4.jar sakai-web-tool
>> velocity-1.6.4.jar web
>>
>>
>>
>>
>>
>> On Fri, Jan 10, 2014 at 5:35 PM, Joshua Swink <joshua.swink at gmail.com>wrote:
>>
>>> I'm seeing deadlocks in spite of the upgrade to Velocity 1.6.4:
>>>
>>> https://jira.sakaiproject.org/browse/SAK-20389
>>>
>>> I'm using Sakai 2.9.2. Could this be due to the fact that earlier
>>> versions of Velocity are used in osp? Here is part of the thread dump:
>>>
>>> "http-bio-8083-exec-16" daemon prio=3 tid=0x0ca4e800 nid=0x6f runnable
>>> [0x36b94000]
>>>    java.lang.Thread.State: RUNNABLE
>>>     at java.util.HashMap.get(HashMap.java:303)
>>>     at
>>> org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:249)
>>>     at
>>> org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
>>>     at
>>> org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
>>>     at
>>> org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
>>>     at
>>> org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
>>>     at
>>> org.apache.velocity.runtime.parser.node.PropertyExecutor.<init>(PropertyExecutor.java:56)
>>>     at
>>> org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:262)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:342)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>     at
>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>     at
>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:87)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:87)
>>>     at
>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
>>>     at org.apache.velocity.runtime.directive.Parse.render(Parse.java:260)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>     at
>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:87)
>>>     at
>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
>>>     at org.apache.velocity.Template.merge(Template.java:328)
>>>     at org.apache.velocity.Template.merge(Template.java:235)
>>>     at
>>> org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:381)
>>>     at
>>> org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:345)
>>>     at
>>> org.sakaiproject.portal.charon.velocity.VelocityPortalRenderEngine.render(VelocityPortalRenderEngine.java:231)
>>>     at
>>> org.sakaiproject.portal.charon.SkinnableCharonPortal.sendResponse(SkinnableCharonPortal.java:2059)
>>>     at
>>> org.sakaiproject.portal.charon.handlers.SiteHandler.doSendResponse(SiteHandler.java:427)
>>>     at
>>> org.sakaiproject.portal.charon.handlers.SiteHandler.doSite(SiteHandler.java:332)
>>>     at
>>> org.sakaiproject.portal.charon.handlers.SiteHandler.doGet(SiteHandler.java:135)
>>>     at
>>> org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:901)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
>>>
>>> Josh
>>>
>>> _______________________________________________
>>> sakai-dev mailing list
>>> sakai-dev at collab.sakaiproject.org
>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>
>>> TO UNSUBSCRIBE: send email to
>>> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
>>> "unsubscribe"
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20140110/57319c71/attachment.html 


More information about the sakai-dev mailing list