MyFaces Core
  1. MyFaces Core
  2. MYFACES-3263

[perf] [concurrency] improve concurrency in resource dependency processing

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Not A Problem
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      1) <BLOCKED> java.util.Collections$SynchronizedMap.containsKey(Object)
      java.lang.reflect.Proxy.isProxyClass(Class)
      sun.reflect.annotation.AnnotationInvocationHandler.asOneOfUs(Object)
      sun.reflect.annotation.AnnotationInvocationHandler.equalsImpl(Object)
      sun.reflect.annotation.AnnotationInvocationHandler.invoke(Object, Method, Object[])
      $Proxy272.equals(Object)
      java.util.HashMap.getEntry(Object)
      java.util.HashMap.containsKey(Object)
      o.a.m.context.RequestViewContext.isResourceDependencyAlreadyProcessed(ResourceDependency)

      2) <BLOCKED> java.lang.Class.initAnnotationsIfNecessary()
      java.lang.Class.getAnnotation(Class)
      org.apache.myfaces.application.ApplicationImpl._handleAttachedResourceDependencyAnnotations(FacesContext, Object)

      ad 1) consider IdentityHashMap - (how is specified equals() for annotation ?)

      ad2) ApplicationImpl has _classToResourceDependencyMap already - use it?

        Activity

        Hide
        Leonardo Uribe added a comment -

        In MYFACES-3664, this part was reimplemented to align it better with the view pool idea, so the concurrency issue dissapeared. However, MYFACES-3264 is still a valid issue, so I'll close this one as "not a problem", and keep MYFACES-3264 open

        Show
        Leonardo Uribe added a comment - In MYFACES-3664 , this part was reimplemented to align it better with the view pool idea, so the concurrency issue dissapeared. However, MYFACES-3264 is still a valid issue, so I'll close this one as "not a problem", and keep MYFACES-3264 open

          People

          • Assignee:
            Martin Kočí
            Reporter:
            Martin Kočí
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development