[Building Sakai] velocity deadlocks in hashmap

Matthew Jones matthew at longsight.com
Fri Jan 10 14:59:55 PST 2014


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/16fc0705/attachment.html 


More information about the sakai-dev mailing list