[MGNLUI-4872] About App taking ages to show Created: 13/Sep/17  Updated: 30/Oct/19  Resolved: 06/Dec/18

Status: Closed
Project: Magnolia UI
Component/s: about app
Affects Version/s: 5.5.6, 5.6.6
Fix Version/s: 5.5.13, 5.6.8, 5.7.2, 6.1

Type: Improvement Priority: High
Reporter: Joerg von Frantzius Assignee: Federico Grilli
Resolution: Fixed Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
causality
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Release notes required:
Yes
Date of First Response:
Visible to:
Frank Sommer
Epic Link: Support
Sprint: Basel 161
Story Points: 2

 Description   

When we launch the Magnolia About App on our dev server it takes ages to show. A threaddump shows that it is waiting for a network connection while XML parsing:

"ajp-nio-127.0.0.1-8009-exec-9" #482 daemon prio=5 os_prio=0 tid=0x00007eff589e3000 nid=0x28792 runnable [0x00007efe0b1e8000]
   java.lang.Thread.State: RUNNABLE
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
        - locked <0x00000000e90fe4e0> (a java.net.SocksSocketImpl)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:589)
        at java.net.Socket.connect(Socket.java:538)
        at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
        - locked <0x00000000e90fe458> (a sun.net.www.http.HttpClient)
        at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
        at sun.net.www.http.HttpClient.New(HttpClient.java:339)
        at sun.net.www.http.HttpClient.New(HttpClient.java:357)
        at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1202)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1138)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1032)
        at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:966)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1546)
        - locked <0x00000000e90fda70> (a sun.net.www.protocol.http.HttpURLConnection)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1474)
        - locked <0x00000000e90fda70> (a sun.net.www.protocol.http.HttpURLConnection)
        at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
        at org.apache.xerces.impl.XMLEntityManager.startEntity(Unknown Source)
        at org.apache.xerces.impl.XMLEntityManager.startDTDEntity(Unknown Source)
        at org.apache.xerces.impl.XMLDTDScannerImpl.setInputSource(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
        at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
        at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:205)
        at info.magnolia.about.app.InstanceConfigurationProvider.getConnectionString(InstanceConfigurationProvider.java:118)
        at info.magnolia.about.app.InstanceConfigurationProvider.getConnection(InstanceConfigurationProvider.java:185)
        at info.magnolia.about.app.InstanceConfigurationProvider.getDatabase(InstanceConfigurationProvider.java:237)
        at info.magnolia.about.app.AboutPresenter.getInstallationInfo(AboutPresenter.java:130)
        at info.magnolia.enterprise.about.app.EnterpriseAboutPresenter.getInstallationInfo(EnterpriseAboutPresenter.java:127)
        at info.magnolia.about.app.AboutPresenter.start(AboutPresenter.java:103)
        at info.magnolia.enterprise.about.app.EnterpriseAboutPresenter.start(EnterpriseAboutPresenter.java:111)
        at info.magnolia.about.app.AboutMainSubApp.<init>(AboutMainSubApp.java:48)

Perhaps you can turn off retrieving external files via HTTP while XML parsing?



 Comments   
Comment by Viet Nguyen [ 13/Sep/17 ]
  • Dom DTD validation creates external connections which prevented About app to load properly in some customers' specific environment, please consider providing a configuration point to switch it on/off accordingly.
Comment by Frank Sommer [ 13/Sep/17 ]

This isn't a new issue. Was already fixed, see MGNLUI-3768

Comment by Viet Nguyen [ 13/Sep/17 ]

Thanks frank.sommer for your information, and well, it happen again in another form, so let's do some more investigation and fixing it

Comment by Joerg von Frantzius [ 13/Sep/17 ]

This issue now isn't assigned to anyone anymore, not on purpose perhaps?

Comment by Viet Nguyen [ 13/Sep/17 ]

Hello jfrantzius, as our development team would have to do scrum planning and schedule our efforts accordingly, please don't worry.

Generated at Mon Feb 12 09:20:56 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.