cells: Port pinboard to Java 8

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Karsten Schwank <karsten.schwank@desy.de>
Patch: https://rb.dcache.org/r/7445/
xrootd: Add access-log plugin

Allows xrootd doors to generate an access log similar to those of SRM, FTP and WebDAV
doors. May optionally be used on pools too.

Target: trunk
Request: 2.11
Request: 2.10
Require-notes: yes
Require-book: no
Acked-by: Karsten Schwank <karsten.schwank@desy.de>
Patch: https://rb.dcache.org/r/7442/
srm: Enable legacy GSI close by default

We have only recently released a client for close works, so it is
wise to enable legacy close by default.

Target: trunk
Request: 2.11
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: https://rb.dcache.org/r/7452/
webadmin: refactor navigation bar

This patch makes several minor improvements to the navigation bar.

  1. The unavailable page is removed; instead, disabled items (e.g.,
     pool queue plots and billing plots, with default configuration)
     appear as (unclickable) text rather than a link to the non-descript
     unavailable page.

  2. The text for disabled items (see above) has specific CSS class;
     this allows the CSS to show the text as ghosted out items, giving
     a visual hint that these items are not available.

  3. The HTML 'title' attribute, which browsers typically show as a
     mouse-over tool-tip, provides specific information on why the
     item is disabled.  This gives the admin a hint how to enable
     such disabled items.

  4. The pages that require authentication (pool admin, cell admin,
     and alarms) have an additional CSS class when user is currently
     not authenticated.  With this patch CSS makes such text a dark
     red.  As before, clicking on these link redirects the user to the
     login page.  Once logged in, these links become the normal
     (azure/blue) colour and clicking on the link takes the user to
     the expected page.

  5. The a-tags in the nav-bar now have id elements.  This is to aid
     functional testing.

  6. The text for the link names (stored in BasicNavigationPanel.properties)
     are now reference the link's id, rather than by index.

The patch also refactors the corresponding BasicNavigationPanel class.

Target: master
Requires-notes: no
Requires-book: no
Patch: https://rb.dcache.org/r/7435/
Acked-by: Albert Rossi
pool: use entry's actual LastAccessTime to update namespace

do not call System.currentTimeMillis() as LastAccessTime is already
provided.

Acked-by: Gerd Behrmann
Target: master
Require-book: no
Require-notes: no
libs: update jglobus to 2.0.6-rc8.d

Changelog for v2.0.6-rc7.d..2.0.6-rc8.d
    * [35fe1c1] Only cache CA's signing policy as not found after searching all
    * [3ae5c04] Avoid memory leak and stale information when scanning directorie

Target: master
Require-book: no
Require-notes: yes
Patch: https://rb.dcache.org/r/7453/
Acked-by: Gerd Behrmann

Conflicts:
	pom.xml
webadmin: add meta tags to discover dCache version

In the future, the webadmin functional testing may need to know which
dCache version it is testing.  This patch provides this information
in the somewhat standard generator meta-tag in addition to the
easier-to-parse version meta-tag.

Target: master
Requires-notes: yes
Requires-book: no
Patch: https://rb.dcache.org/r/7428/
Acked-by: Albert Rossi
srm,webadmin,httpd: Upgrade to Jetty 9.2.4

I hope this upgrade fixes the following problem:

05 Nov 2014 12:00:10 (SRM-bunsen) [] Commit failed
java.lang.IllegalStateException: Closed with pending callback org.eclipse.jetty.server.HttpConnection$SendCallback@6e3b2c00[CLOSED][i=ResponseInfo{HTTP/1.1 200 null,-1,false},cb=org.eclipse.jetty.server.HttpChannel$CommitCallback@6ec5ec89]
        at org.eclipse.jetty.util.IteratingCallback.close(IteratingCallback.java:397) [jetty-util-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpConnection.onClose(HttpConnection.java:429) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.ssl.SslConnection.onClose(SslConnection.java:157) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.SelectorManager.connectionClosed(SelectorManager.java:277) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.SelectorManager$ManagedSelector.destroyEndPoint(SelectorManager.java:690) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.SelectChannelEndPoint.close(SelectChannelEndPoint.java:169) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.ChannelEndPoint.shutdownOutput(ChannelEndPoint.java:92) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.flush(SslConnection.java:740) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.WriteFlusher.write(WriteFlusher.java:337) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.AbstractEndPoint.write(AbstractEndPoint.java:128) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpConnection$SendCallback.process(HttpConnection.java:637) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.util.IteratingCallback.processIterations(IteratingCallback.java:233) [jetty-util-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.util.IteratingCallback.iterate(IteratingCallback.java:193) [jetty-util-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpConnection.send(HttpConnection.java:448) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpChannel.sendResponse(HttpChannel.java:740) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpChannel.write(HttpChannel.java:778) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:131) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:124) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpOutput.flush(HttpOutput.java:226) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:297) [na:1.7.0_71]
        at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:141) [na:1.7.0_71]
        at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229) [na:1.7.0_71]
        at java.io.PrintWriter.flush(PrintWriter.java:320) [na:1.7.0_71]
        at java.io.BufferedWriter.flush(BufferedWriter.java:254) [na:1.7.0_71]
        at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:270) [axis-1.4.jar:na]
        at org.apache.axis.Message.writeTo_aroundBody0(Message.java:539) [axis-1.4.jar:na]
        at org.apache.axis.Message$AjcClosure1.run(Message.java:1) [axis-1.4.jar:na]
        at org.dcache.srm.aspects.EofExceptionAspect.ajc$around$org_dcache_srm_aspects_EofExceptionAspect$1$69ec417cproceed(EofExceptionAspect.aj:39) [srm-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
        at org.dcache.srm.aspects.EofExceptionAspect.ajc$around$org_dcache_srm_aspects_EofExceptionAspect$1$69ec417c(EofExceptionAspect.aj:41) [srm-server-2.11.0-SNAPSHOT.jar:2.11.0-SNAPSHOT]
        at org.apache.axis.Message.writeTo(Message.java:539) [axis-1.4.jar:na]
        at org.apache.axis.transport.http.AxisServlet.sendResponse(AxisServlet.java:902) [axis-1.4.jar:na]
        at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:777) [axis-1.4.jar:na]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) [javax.servlet-api-3.1.0.jar:3.1.0]
        at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327) [axis-1.4.jar:na]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [javax.servlet-api-3.1.0.jar:3.1.0]
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:769) [jetty-servlet-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) [jetty-servlet-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) [jetty-security-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1125) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) [jetty-servlet-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1059) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.Server.handle(Server.java:485) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:290) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:248) [jetty-server-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) [jetty-io-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:606) [jetty-util-9.2.2.v20140723.jar:9.2.2.v20140723]
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:535) [jetty-util-9.2.2.v20140723.jar:9.2.2.v20140723]
        at java.lang.Thread.run(Thread.java:745) [na:1.7.0_71]

At leat the specific code path leading to the above exception no longer
exists in v9.2.4.

Target: trunk
Request: 2.11
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: https://rb.dcache.org/r/7454/
pool: Minor cleanup of xrootd logging

Increases consistency among log messages.

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: https://rb.dcache.org/r/7455/
srm: Java 8 related updates

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: https://rb.dcache.org/r/7448/
system-test: move alarms service to dCacheDomain

Since a separate domain is no longer required, we can simplify the system-test
setup by moving that service to dCacheDomain.

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: https://rb.dcache.org/r/7456/
nfs-proxy: kill mover on close

kill the mover on close if we did not have an
established data connection yet.

kill mover if we have failed to get a redirect within a
defined time window

Acked-by: Gerd Behrmann
Target: master, 2.11, 2.10, 2.9, 2.8, 2.7, 2.6
Require-book: no
Require-notes: no
gplazma-ldap: support uniqueMember based group membership query

support group membership for LDAP schema defined by RFC2307 and RFC2307bis

Acked-by: karsten Schwank
Target: master, 2.11, 2.10
Require-book: no
Require-notes: yes
gplazma-ldap: pull only required attribute

ldap query results can be too big. Tell the server that we need only
some data.

Acked-by: Karsten Schwank
Target: master, 2.11, 2.10
Require-book: no
Require-notes: no
chimera: Avoid deprecated Guava calls

These methods are removed in Guava 18.

Target: trunk
Require-notes: no
Requier-book: no
Acked-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Patch: https://rb.dcache.org/r/7466/
dcache-xrootd: Extend and improve xrootd access log plugin

Adds more information to the access log plugin output, and refines the existing
output.

Target: trunk
Require-notes: yes
Require-book: no
Acked-by: Karsten Schwank <karsten.schwank@desy.de>
Patch: https://rb.dcache.org/r/7470/
Request: 2.11
Request: 2.10
libs: update to nfs4j-0.9.2

performance improvements

Changelog for nfs4j-0.9.1..nfs4j-0.9.2
    * [9951033] pseudofs: do not check READ_ATTR bit for unix
    * [c16ed50] avoid extra copy of data buffer in nfs3.read

Acked-by: Paul Millar
Target: master
Require-book: no
Require-notes: no
    dcache-webadmin: eliminate clojure dependency

    Get rid of stack trace reporting error.  deps.js is
    unused.

    Target: master
    Request: 2.11
    Request: 2.10
    Request: 2.9
    Request: 2.8
    Request: 2.7
    Requires-book: no
    Requires-notes: yes
    Acked-by:  Paul
srm-server: add servlet webapp-2.3.dtd file

The SRM server makes use of an XML file that follows the Sevlet 2.3
deployment descriptor.  When receiving the first SRM operation, Jetty
will parse the deployment descriptor, which requires the corresponding
DTD.

Previously (with Jetty 8) the DTD came as part of the servlet-api-2.x
jar file.  Jetty 9 depends on servlet-api 3.1, which does not contain
the deployment descriptor DTD:

    https://java.net/jira/browse/SERVLET_SPEC-115

Therefore, when it receives the first SRM operation, dCache will
download the DTD from java.sun.com.  For most sites, this is merely
undesirable, but if the dCache instance is not connected to the
Internet then this is problematic as a stack-trace is logged with the
root cause of:

    java.net.UnknownHostException: java.sun.com

and the SRM does not work.

This patch works around the problem by embedding the DTD in the
srm-server jar file.

Target: master
Patch: https://rb.dcache.org/r/7459
Acked-by: Gerd Behrmann
Request: 2.11
Require-notes: no
Require-book: no
dcache-webadmin: change output field of cell admin page to monospace font

Many of the dCache services format the output into columns and that only works with a mono space font.

Target: master
Request: 2.11
Request: 2.10
Request: 2.9
Request: 2.8
Request: 2.7
Request: 2.6
Acked-by: Gerd
Acked-by: Paul
Require-notes: no
Require-book: no