Skip to content

Commit 7b5b04f

Browse files
authored
Merge pull request JanusGraph#1092 from jerryjch/janusgraph-hbase-server
Create a separate module to encapsulate hbase-server dependencies JanusGraph#1078
2 parents 594ec29 + f8ca24b commit 7b5b04f

File tree

135 files changed

+207
-8658
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

135 files changed

+207
-8658
lines changed

janusgraph-dist/janusgraph-dist-hadoop-2/pom.xml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,6 @@
3131
<artifactId>hbase-shaded-server</artifactId>
3232
<!-- Need the -server artifact for hbase.mapreduce.TableInputFormat (Faunus) -->
3333
<version>${hbase100.version}</version>
34-
<exclusions>
35-
<exclusion>
36-
<groupId>com.lmax</groupId>
37-
<artifactId>disruptor</artifactId>
38-
</exclusion>
39-
</exclusions>
4034
</dependency>
4135
</dependencies>
4236

janusgraph-hadoop-parent/janusgraph-hadoop-2/pom.xml

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,6 @@
4040
<scope>test</scope>
4141
<optional>true</optional>
4242
</dependency>
43-
<!-- Include janusgraph-hbase-core to resolve Guava StopWatch error in HBase tests.
44-
Can be removed when Guava version is updated in HBase -->
4543
<dependency>
4644
<groupId>${project.groupId}</groupId>
4745
<artifactId>janusgraph-hbase-core</artifactId>
@@ -57,24 +55,14 @@
5755
</dependency>
5856
<dependency>
5957
<groupId>org.apache.hbase</groupId>
60-
<artifactId>hbase-server</artifactId>
58+
<artifactId>hbase-shaded-server</artifactId>
6159
<version>${hbase100.version}</version>
6260
<optional>true</optional>
6361
<scope>test</scope>
64-
<exclusions>
65-
<exclusion>
66-
<groupId>org.mortbay.jetty</groupId>
67-
<artifactId>servlet-api-2.5</artifactId>
68-
</exclusion>
69-
<exclusion>
70-
<groupId>com.lmax</groupId>
71-
<artifactId>disruptor</artifactId>
72-
</exclusion>
73-
</exclusions>
7462
</dependency>
7563
<dependency>
7664
<groupId>org.apache.hbase</groupId>
77-
<artifactId>hbase-client</artifactId>
65+
<artifactId>hbase-shaded-client</artifactId>
7866
<version>${hbase100.version}</version>
7967
<optional>true</optional>
8068
<scope>test</scope>

janusgraph-hadoop-parent/pom.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,12 @@
125125
<scope>test</scope>
126126
</dependency>
127127

128+
<dependency>
129+
<groupId>org.janusgraph</groupId>
130+
<artifactId>janusgraph-hbase-server</artifactId>
131+
<version>${project.version}</version>
132+
<scope>test</scope>
133+
</dependency>
128134
<dependency>
129135
<groupId>org.janusgraph</groupId>
130136
<artifactId>janusgraph-hbase-core</artifactId>

janusgraph-hbase-parent/janusgraph-hbase-10/pom.xml

Lines changed: 50 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
<url>http://janusgraph.org</url>
1212

1313
<properties>
14-
<jruby.version>1.6.8</jruby.version>
1514
<top.level.basedir>${basedir}/../..</top.level.basedir>
1615
</properties>
1716

@@ -27,56 +26,66 @@
2726
</exclusion>
2827
</exclusions>
2928
</dependency>
29+
<dependency>
30+
<groupId>org.janusgraph</groupId>
31+
<artifactId>janusgraph-test</artifactId>
32+
<version>${project.version}</version>
33+
<scope>test</scope>
34+
</dependency>
3035
<dependency>
3136
<groupId>org.apache.hbase</groupId>
3237
<artifactId>hbase-shaded-client</artifactId>
3338
<version>${hbase100.version}</version>
3439
<optional>true</optional>
35-
<exclusions>
36-
<exclusion>
37-
<artifactId>avro</artifactId>
38-
<groupId>org.apache.avro</groupId>
39-
</exclusion>
40-
<exclusion>
41-
<artifactId>jruby-complete</artifactId>
42-
<groupId>org.jruby</groupId>
43-
</exclusion>
44-
<exclusion>
45-
<artifactId>asm</artifactId>
46-
<groupId>asm</groupId>
47-
</exclusion>
48-
</exclusions>
4940
</dependency>
5041
<dependency>
5142
<groupId>org.apache.hbase</groupId>
5243
<artifactId>hbase-shaded-server</artifactId>
5344
<version>${hbase100.version}</version>
5445
<optional>true</optional>
55-
<exclusions>
56-
<exclusion>
57-
<artifactId>avro</artifactId>
58-
<groupId>org.apache.avro</groupId>
59-
</exclusion>
60-
<exclusion>
61-
<artifactId>jruby-complete</artifactId>
62-
<groupId>org.jruby</groupId>
63-
</exclusion>
64-
<exclusion>
65-
<artifactId>asm</artifactId>
66-
<groupId>asm</groupId>
67-
</exclusion>
68-
<exclusion>
69-
<artifactId>com.lmax</artifactId>
70-
<groupId>disruptor</groupId>
71-
</exclusion>
72-
</exclusions>
7346
</dependency>
7447
<dependency>
75-
<artifactId>jruby-complete</artifactId>
76-
<groupId>org.jruby</groupId>
77-
<version>${jruby.version}</version>
48+
<groupId>${project.groupId}</groupId>
49+
<artifactId>janusgraph-hbase-server</artifactId>
50+
<version>${project.version}</version>
7851
<scope>test</scope>
7952
</dependency>
53+
54+
<!-- Logging.
55+
56+
Based on these two HBase links, it seems that HBase has
57+
hard dependencies on log4j and slf4j-log4j12 (in addition
58+
to commons-logging):
59+
60+
http://hbase.apache.org/book/config.files.html#client_dependencies
61+
https://issues.apache.org/jira/browse/HBASE-2608
62+
63+
Our parent pom declares optional runtime-scoped dependencies
64+
on slf4j-log4j12 and log4j. But according to the links above,
65+
these are required compile-scoped dependencies for HBase.
66+
We override the parent's dependency declarations below.
67+
68+
These declarations could go away if HBase ever fully migrates
69+
to slf4j and removes its hard dependency on log4j.
70+
71+
Note, logback-classic is added explicitly to ensure slf4j-log4j12
72+
binding appears on the classpath before logback-classic. See
73+
comments in janusgraph-cassandra/pom.xml for more information.
74+
-->
75+
<dependency>
76+
<groupId>org.slf4j</groupId>
77+
<artifactId>slf4j-log4j12</artifactId>
78+
<optional>true</optional>
79+
</dependency>
80+
<dependency>
81+
<groupId>log4j</groupId>
82+
<artifactId>log4j</artifactId>
83+
<optional>true</optional>
84+
</dependency>
85+
<dependency>
86+
<groupId>ch.qos.logback</groupId>
87+
<artifactId>logback-classic</artifactId>
88+
</dependency>
8089
</dependencies>
8190

8291
<build>
@@ -89,14 +98,6 @@
8998
</testResource>
9099
</testResources>
91100
<plugins>
92-
<plugin>
93-
<artifactId>maven-resources-plugin</artifactId>
94-
<executions>
95-
<execution>
96-
<id>filter-hbase-conf</id>
97-
</execution>
98-
</executions>
99-
</plugin>
100101
<plugin>
101102
<artifactId>maven-dependency-plugin</artifactId>
102103
<executions>
@@ -109,18 +110,19 @@
109110
</executions>
110111
</plugin>
111112
<plugin>
112-
<artifactId>maven-assembly-plugin</artifactId>
113+
<artifactId>maven-clean-plugin</artifactId>
113114
<executions>
114115
<execution>
115-
<id>copy-hbase-bin</id>
116+
<id>clean-hbase-files</id>
116117
</execution>
117118
</executions>
118119
</plugin>
119120
<plugin>
120-
<artifactId>maven-clean-plugin</artifactId>
121+
<artifactId>maven-resources-plugin</artifactId>
121122
<executions>
122123
<execution>
123-
<id>clean-hbase-files</id>
124+
<id>filter-hbase-conf</id>
125+
<phase>none</phase>
124126
</execution>
125127
</executions>
126128
</plugin>

janusgraph-hbase-parent/janusgraph-hbase-10/src/test/bin/draining_servers.rb

Lines changed: 0 additions & 164 deletions
This file was deleted.

0 commit comments

Comments
 (0)