You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ol...@apache.org on 2014/05/19 14:32:29 UTC
svn commit: r1595865 - in /sling/trunk/bundles/jcr/jackrabbit-server: pom.xml
src/main/java/org/apache/sling/jcr/jackrabbit/server/impl/jmx/StatisticsMBeanImpl.java
Author: olli
Date: Mon May 19 12:32:28 2014
New Revision: 1595865
URL: http://svn.apache.org/r1595865
Log:
SLING-3575 SLING-3576 SLING-3577 optimize Sling JCR Jackrabbit Server
- upgrade the embedded jackrabbit-core to 2.6.5 and lucene-core to 3.6.2
- export all packages of embedded jackrabbit-core and lucene-core and
align versions of org.apache.sling.jcr.jackrabbit.server.security and
org.apache.sling.jcr.jackrabbit.server.security.accessmanager
- slim down bundle by not embedding dependencies twice (as lib and
inlined) and make use of concurrent and commons-pool bundles
Modified:
sling/trunk/bundles/jcr/jackrabbit-server/pom.xml
sling/trunk/bundles/jcr/jackrabbit-server/src/main/java/org/apache/sling/jcr/jackrabbit/server/impl/jmx/StatisticsMBeanImpl.java
Modified: sling/trunk/bundles/jcr/jackrabbit-server/pom.xml
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/jackrabbit-server/pom.xml?rev=1595865&r1=1595864&r2=1595865&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/jackrabbit-server/pom.xml (original)
+++ sling/trunk/bundles/jcr/jackrabbit-server/pom.xml Mon May 19 12:32:28 2014
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
@@ -17,7 +17,7 @@
specific language governing permissions and limitations
under the License.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.sling</groupId>
@@ -42,6 +42,11 @@
<url>http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/jackrabbit-server</url>
</scm>
+ <properties>
+ <org.apache.jackrabbit.version>2.6.5</org.apache.jackrabbit.version>
+ <org.apache.lucene.version>3.6.2</org.apache.lucene.version>
+ </properties>
+
<build>
<plugins>
<!-- generate the SCR descriptors -->
@@ -94,49 +99,18 @@
org.apache.sling.jcr.jackrabbit.server.impl.Activator
</Bundle-Activator>
<Export-Package>
- org.apache.sling.jcr.jackrabbit.server;version=2.1.0,
- org.apache.sling.jcr.jackrabbit.server.security;version=2.0.4-incubator,
- org.apache.sling.jcr.jackrabbit.server.security.accessmanager;version=2.1.0,
- org.apache.jackrabbit.core.security.principal;version=2.2.5
+ org.apache.sling.jcr.jackrabbit.server;version=${project.version},
+ org.apache.sling.jcr.jackrabbit.server.security;version=2.0.6,
+ org.apache.sling.jcr.jackrabbit.server.security.accessmanager;version=2.0.6,
+ org.apache.jackrabbit.core.*;version=${org.apache.jackrabbit.version},
+ org.apache.lucene.*;version=${org.apache.lucene.version}
</Export-Package>
<Private-Package>
- org.apache.sling.jcr.jackrabbit.server.impl.*,
- org.apache.commons.*
+ org.apache.sling.jcr.jackrabbit.server.impl.*
</Private-Package>
<Import-Package>
- <!-- Sling and OSGi -->
- org.apache.sling.*, org.osgi.*,
- <!-- JNDI, Security, Transactions -->
- javax.naming.*,
- javax.security.*,
- javax.sql.*,
- javax.transaction.xa,
- <!-- Helpers -->
- org.apache.commons.io.*,
- org.apache.commons.collections.*,
- <!-- JCR and Jackrabbit API -->
- javax.jcr.*, org.apache.jackrabbit.api.*,
- org.apache.jackrabbit.spi.*,
-
- <!-- Logging -->
- org.slf4j,
- <!-- XML stuff -->
- javax.xml.*, org.xml.sax.*, org.w3c.dom.*,
- <!-- JAR Service Registry for Query -->
- javax.imageio.spi,
-
<!-- Exclude package, see JCR-2412 -->
!org.apache.jackrabbit.test,
-
- <!-- playground imports -->
- org.apache.tika.*,
-
- <!-- Jackrabbit internals -->
- org.apache.jackrabbit.util,
- org.apache.jackrabbit.value,
- org.apache.jackrabbit.commons.*,
- org.apache.jackrabbit.spi.commons.*,
-
<!-- optional JDBC driver import -->
com.microsoft.sqlserver.jdbc;
oracle.jdbc;
@@ -144,26 +118,15 @@
org.gjt.mm.mysql;
org.h2;
org.postgresql;
- resolution:=optional,
-
- <!-- Required by concurrent lib SynchronizationTimer class -->
- javax.swing.*;resolution:=optional
+ resolution:=optional
</Import-Package>
<DynamicImport-Package>*</DynamicImport-Package>
-
- <!-- Embedd some libraries -->
- <Embed-Transitive>true</Embed-Transitive>
<Embed-Dependency>
- jackrabbit-core,
- lucene-core,
- concurrent,
- commons-dbcp,
- commons-pool,
+ *;scope=compile;inline=true,
org.apache.sling.commons.osgi;inline=org/apache/sling/commons/osgi/PropertiesUtil*
</Embed-Dependency>
<_removeheaders>
Embed-Dependency,
- Embed-Transitive,
Private-Package,
Include-Resource
</_removeheaders>
@@ -192,6 +155,7 @@
<groupId>javax.jcr</groupId>
<artifactId>jcr</artifactId>
<version>2.0</version>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.sling</groupId>
@@ -203,23 +167,34 @@
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.jcr.base</artifactId>
<version>2.2.3-SNAPSHOT</version>
- <scope>compile</scope>
+ <scope>provided</scope>
</dependency>
<!-- The core repository implementation -->
<dependency>
<groupId>org.apache.jackrabbit</groupId>
<artifactId>jackrabbit-api</artifactId>
- <version>2.4.2</version>
+ <version>2.6.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.jackrabbit</groupId>
<artifactId>jackrabbit-core</artifactId>
- <version>2.4.2</version>
+ <version>${org.apache.jackrabbit.version}</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.lucene</groupId>
+ <artifactId>lucene-core</artifactId>
+ <version>${org.apache.lucene.version}</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-dbcp</groupId>
+ <artifactId>commons-dbcp</artifactId>
+ <version>1.4</version>
<scope>compile</scope>
</dependency>
-
<!-- for SCR plugin supporting descriptor inheritance -->
<dependency>
<groupId>org.apache.sling</groupId>
@@ -238,14 +213,17 @@
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.core</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.compendium</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.scr.annotations</artifactId>
+ <scope>provided</scope>
</dependency>
</dependencies>
Modified: sling/trunk/bundles/jcr/jackrabbit-server/src/main/java/org/apache/sling/jcr/jackrabbit/server/impl/jmx/StatisticsMBeanImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/jackrabbit-server/src/main/java/org/apache/sling/jcr/jackrabbit/server/impl/jmx/StatisticsMBeanImpl.java?rev=1595865&r1=1595864&r2=1595865&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/jackrabbit-server/src/main/java/org/apache/sling/jcr/jackrabbit/server/impl/jmx/StatisticsMBeanImpl.java (original)
+++ sling/trunk/bundles/jcr/jackrabbit-server/src/main/java/org/apache/sling/jcr/jackrabbit/server/impl/jmx/StatisticsMBeanImpl.java Mon May 19 12:32:28 2014
@@ -131,29 +131,29 @@ public class StatisticsMBeanImpl impleme
return new AttributeList();
}
AttributeList al = new AttributeList();
- Iterator<Entry<Type, TimeSeries>> statIter = statistics.iterator();
+ Iterator<Entry<String, TimeSeries>> statIter = statistics.iterator();
while (statIter.hasNext()) {
- Entry<Type, TimeSeries> entry = statIter.next();
+ Entry<String, TimeSeries> entry = statIter.next();
long[] valuePerSecond = entry.getValue().getValuePerSecond();
- al.add(new Attribute("PerSecond_" + entry.getKey().name(),
+ al.add(new Attribute("PerSecond_" + entry.getKey(),
valuePerSecond[valuePerSecond.length - 1]));
al.add(new Attribute(
- "LastMinutePerSecond_" + entry.getKey().name(),
+ "LastMinutePerSecond_" + entry.getKey(),
valuePerSecond));
long[] valuePerMinute = entry.getValue().getValuePerMinute();
- al.add(new Attribute("PerMinute" + entry.getKey().name(),
+ al.add(new Attribute("PerMinute" + entry.getKey(),
valuePerMinute[valuePerMinute.length - 1]));
- al.add(new Attribute("LastHourPerMinute_" + entry.getKey().name(),
+ al.add(new Attribute("LastHourPerMinute_" + entry.getKey(),
valuePerMinute));
long[] valuePerHour = entry.getValue().getValuePerHour();
- al.add(new Attribute("PerHour_" + entry.getKey().name(),
+ al.add(new Attribute("PerHour_" + entry.getKey(),
valuePerHour[valuePerHour.length - 1]));
- al.add(new Attribute("LastWeekPerHour_" + entry.getKey().name(),
+ al.add(new Attribute("LastWeekPerHour_" + entry.getKey(),
valuePerHour));
long[] valuePerWeek = entry.getValue().getValuePerWeek();
- al.add(new Attribute("PerWeek_" + entry.getKey().name(),
+ al.add(new Attribute("PerWeek_" + entry.getKey(),
valuePerWeek[valuePerWeek.length - 1]));
- al.add(new Attribute("LastYearPerWeek_" + entry.getKey().name(),
+ al.add(new Attribute("LastYearPerWeek_" + entry.getKey(),
valuePerWeek));
}
return al;
@@ -170,50 +170,51 @@ public class StatisticsMBeanImpl impleme
"Repository Statistics Unavailable", null, null, null, null);
}
List<MBeanAttributeInfo> attributesList = new ArrayList<MBeanAttributeInfo>();
- Set<Type> types = new HashSet<Type>();
- Iterator<Entry<Type, TimeSeries>> statIter = statistics.iterator();
+ Set<String> typeNames = new HashSet<String>();
+ Iterator<Entry<String, TimeSeries>> statIter = statistics.iterator();
while (statIter.hasNext()) {
- Entry<Type, TimeSeries> entry = statIter.next();
+ Entry<String, TimeSeries> entry = statIter.next();
attributesList.add(new MBeanAttributeInfo("PerSecond_"
- + entry.getKey().name(), long.class.getName(),
- "Current per second value of " + entry.getKey().name(),
+ + entry.getKey(), long.class.getName(),
+ "Current per second value of " + entry.getKey(),
true, false, false));
attributesList.add(new MBeanAttributeInfo("LastMinutePerSecond_"
- + entry.getKey().name(), long[].class.getName(),
+ + entry.getKey(), long[].class.getName(),
"Last minute of per seconds values of "
- + entry.getKey().name(), true, false, false));
+ + entry.getKey(), true, false, false));
attributesList.add(new MBeanAttributeInfo("PerMinute"
- + entry.getKey().name(), long.class.getName(),
- "Current per minute value of " + entry.getKey().name(),
+ + entry.getKey(), long.class.getName(),
+ "Current per minute value of " + entry.getKey(),
true, false, false));
attributesList.add(new MBeanAttributeInfo("LastHourPerMinute_"
- + entry.getKey().name(), long[].class.getName(),
+ + entry.getKey(), long[].class.getName(),
"Last hour of per minute values of "
- + entry.getKey().name(), true, false, false));
+ + entry.getKey(), true, false, false));
attributesList.add(new MBeanAttributeInfo("PerHour_"
- + entry.getKey().name(), long.class.getName(),
- "Current per hour value of " + entry.getKey().name(), true,
+ + entry.getKey(), long.class.getName(),
+ "Current per hour value of " + entry.getKey(), true,
false, false));
attributesList.add(new MBeanAttributeInfo("LastWeekPerHour_"
- + entry.getKey().name(), long[].class.getName(),
- "Last week of per hour values of " + entry.getKey().name(),
+ + entry.getKey(), long[].class.getName(),
+ "Last week of per hour values of " + entry.getKey(),
true, false, false));
attributesList.add(new MBeanAttributeInfo("PerWeek_"
- + entry.getKey().name(), long.class.getName(),
- "Current per week value of " + entry.getKey().name(), true,
+ + entry.getKey(), long.class.getName(),
+ "Current per week value of " + entry.getKey(), true,
false, false));
attributesList.add(new MBeanAttributeInfo("LastYearPerWeek_"
- + entry.getKey().name(), long[].class.getName(),
- "Last year of per week values of " + entry.getKey().name(),
+ + entry.getKey(), long[].class.getName(),
+ "Last year of per week values of " + entry.getKey(),
true, false, false));
- types.add(entry.getKey());
+ typeNames.add(entry.getKey());
}
for (Type t : Type.values()) {
- if (!types.contains(t)) {
- attributesList.add(new MBeanAttributeInfo(t.name(), long.class
- .getName(), "Current counter value of " + t.name(),
+ final String name = t.name();
+ if (!typeNames.contains(name)) {
+ attributesList.add(new MBeanAttributeInfo(name, long.class
+ .getName(), "Current counter value of " + name,
true, false, false));
- types.add(t);
+ typeNames.add(name);
}
}
MBeanAttributeInfo[] attributes = attributesList