Skip to content

Commit 0edf343

Browse files
committed
Merge branch 'master' of https://github.com/apache/samza
2 parents 67e611e + f249e71 commit 0edf343

File tree

538 files changed

+23688
-6693
lines changed

Some content is hidden

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

538 files changed

+23688
-6693
lines changed

.travis.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ jdk:
3030
- oraclejdk8
3131

3232
script:
33-
- ./gradlew clean build
33+
## travis_wait increases build idle-wait time from 10 minutes to 20 minutes.
34+
- travis_wait 20 ./gradlew clean build
3435
- type sonar-scanner &>/dev/null; if [ $? -eq 0 ]; then sonar-scanner; else echo "Not running sonar"; fi
3536

3637
before_cache:

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## What is Samza? [![Build Status](https://builds.apache.org/view/S-Z/view/Samza/job/samza-freestyle-build/badge/icon)](https://builds.apache.org/view/S-Z/view/Samza/job/samza-freestyle-build/) [![Build Status](https://travis-ci.org/apache/samza.svg?branch=master)](https://travis-ci.org/apache/samza)
1+
## What is Samza? [![Build Status](https://travis-ci.org/apache/samza.svg?branch=master)](https://travis-ci.org/apache/samza)
22

33
[Apache Samza](http://samza.apache.org/) is a distributed stream processing framework. It uses [Apache Kafka](http://kafka.apache.org) for messaging, and [Apache Hadoop YARN](http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html) to provide fault tolerance, processor isolation, security, and resource management.
44

@@ -12,7 +12,7 @@ Samza's key features include:
1212
* **Pluggable:** Though Samza works out of the box with Kafka and YARN, Samza provides a pluggable API that lets you run Samza with other messaging systems and execution environments.
1313
* **Processor isolation:** Samza works with Apache YARN, which supports Hadoop's security model, and resource isolation through Linux CGroups.
1414

15-
Check out [Hello Samza](https://samza.apache.org/startup/hello-samza/0.11/) to try Samza. Read the [Background](https://samza.apache.org/learn/documentation/0.8/introduction/background.html) page to learn more about Samza.
15+
Check out [Hello Samza](https://samza.apache.org/startup/hello-samza/latest/) to try Samza. Read the [Background](https://samza.apache.org/learn/documentation/latest/introduction/background.html) page to learn more about Samza.
1616

1717
### Building Samza
1818

bin/check-all.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
set -e
2323

24-
SCALAs=( "2.10" "2.11" "2.12" )
24+
SCALAs=( "2.11" "2.12" )
2525
JDKs=( "JAVA8_HOME" )
2626
YARNs=( "2.6.1" "2.7.1" )
2727

bin/integration-tests.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,8 @@ cd $ABS_TEST_DIR
5353
# setup virtualenv locally if it's not already there
5454
VIRTUAL_ENV=virtualenv-15.0.1
5555
if [[ ! -d "${ABS_TEST_DIR}/${VIRTUAL_ENV}" ]] ; then
56-
curl -O https://pypi.python.org/packages/source/v/virtualenv/$VIRTUAL_ENV.tar.gz
56+
# using --location to follow any redirects
57+
curl -O --location https://pypi.python.org/packages/source/v/virtualenv/$VIRTUAL_ENV.tar.gz
5758
tar xvfz $VIRTUAL_ENV.tar.gz
5859
fi
5960

build.gradle

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ rat {
5252
'**/*.svg',
5353
'**/*.ttf',
5454
'**/*.woff',
55+
'*.log',
5556
'**/hs_err_pid*.log',
5657
'**/.classpath',
5758
'**/.cache/**',
@@ -100,7 +101,7 @@ allprojects {
100101
// For all scala compilation, add extra compiler options, taken from version-specific
101102
// dependency-versions-scala file applied above.
102103
tasks.withType(ScalaCompile) {
103-
scalaCompileOptions.additionalParameters = [ scalaOptions ]
104+
scalaCompileOptions.additionalParameters = scalaOptions
104105
}
105106
}
106107

@@ -115,6 +116,11 @@ subprojects {
115116
apply plugin: 'project-report'
116117
apply plugin: 'jacoco'
117118

119+
tasks.withType(ScalaCompile) {
120+
// show compile errors in console output
121+
logging.setLevel LogLevel.WARN
122+
}
123+
118124
tasks.withType(Test) {
119125
test {
120126
testLogging {
@@ -197,7 +203,7 @@ project(':samza-azure') {
197203

198204
dependencies {
199205
compile "com.microsoft.azure:azure-storage:5.3.1"
200-
compile "com.microsoft.azure:azure-eventhubs:0.14.5"
206+
compile "com.microsoft.azure:azure-eventhubs:1.0.1"
201207
compile "com.fasterxml.jackson.core:jackson-core:2.8.8"
202208
compile "io.dropwizard.metrics:metrics-core:3.1.2"
203209
compile project(':samza-api')
@@ -311,13 +317,17 @@ project(':samza-sql') {
311317
dependencies {
312318
compile project(':samza-api')
313319
compile project(":samza-kafka_$scalaVersion")
320+
compile project(":samza-kv-inmemory_$scalaVersion")
321+
compile project(":samza-kv-rocksdb_$scalaVersion")
314322
compile "org.apache.avro:avro:$avroVersion"
315323
compile "org.apache.calcite:calcite-core:$calciteVersion"
316324
compile "org.slf4j:slf4j-api:$slf4jVersion"
317325

318-
testCompile project(":samza-test_$scalaVersion")
319326
testCompile "junit:junit:$junitVersion"
320327
testCompile "org.mockito:mockito-core:$mockitoVersion"
328+
testCompile "org.powermock:powermock-api-mockito:$powerMockVersion"
329+
testCompile "org.powermock:powermock-core:$powerMockVersion"
330+
testCompile "org.powermock:powermock-module-junit4:$powerMockVersion"
321331

322332
testRuntime "org.slf4j:slf4j-simple:$slf4jVersion"
323333
}
@@ -442,6 +452,7 @@ project(":samza-yarn_$scalaVersion") {
442452
compile "org.scala-lang:scala-compiler:$scalaLibVersion"
443453
compile "org.codehaus.jackson:jackson-mapper-asl:$jacksonVersion"
444454
compile "commons-httpclient:commons-httpclient:$commonsHttpClientVersion"
455+
compile "org.apache.httpcomponents:httpclient:$httpClientVersion"
445456
compile("org.apache.hadoop:hadoop-yarn-api:$yarnVersion") {
446457
exclude module: 'slf4j-log4j12'
447458
}
@@ -748,21 +759,24 @@ project(":samza-test_$scalaVersion") {
748759
compile project(":samza-kv-inmemory_$scalaVersion")
749760
compile project(":samza-kv-rocksdb_$scalaVersion")
750761
compile project(":samza-core_$scalaVersion")
762+
compile project(":samza-kafka_$scalaVersion")
763+
compile project(":samza-sql")
751764
runtime project(":samza-log4j")
752765
runtime project(":samza-yarn_$scalaVersion")
753-
runtime project(":samza-kafka_$scalaVersion")
754766
runtime project(":samza-hdfs_$scalaVersion")
755767
compile "org.scala-lang:scala-library:$scalaLibVersion"
756768
compile "net.sf.jopt-simple:jopt-simple:$joptSimpleVersion"
757769
compile "javax.mail:mail:1.4"
758770
compile "org.apache.kafka:kafka_$scalaVersion:$kafkaVersion"
771+
compile "junit:junit:$junitVersion"
772+
compile "org.hamcrest:hamcrest-all:$hamcrestVersion"
759773
testCompile "org.apache.kafka:kafka_$scalaVersion:$kafkaVersion:test"
760774
testCompile "com.101tec:zkclient:$zkClientVersion"
761-
testCompile "junit:junit:$junitVersion"
762775
testCompile project(":samza-kafka_$scalaVersion")
763776
testCompile "org.apache.kafka:kafka_$scalaVersion:$kafkaVersion:test"
764777
testCompile "org.apache.kafka:kafka-clients:$kafkaVersion:test"
765778
testCompile project(":samza-core_$scalaVersion").sourceSets.test.output
779+
testCompile project(":samza-sql").sourceSets.test.output
766780
testCompile "org.scalatest:scalatest_$scalaVersion:$scalaTestVersion"
767781
testCompile "org.mockito:mockito-core:$mockitoVersion"
768782
testRuntime "org.slf4j:slf4j-simple:$slf4jVersion"

docs/Gemfile

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,10 @@
1414
# KIND, either express or implied. See the License for the
1515
# specific language governing permissions and limitations
1616
# under the License.
17+
1718
source 'https://rubygems.org'
18-
gem 'jekyll'
19+
20+
gem 'jekyll', '3.4.5'
21+
gem 'json', '2.1.0'
22+
gem 'redcarpet', '3.4.0'
23+
gem 'pygments.rb', '1.2.1'

docs/Gemfile.lock

Lines changed: 46 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,59 @@
11
GEM
22
remote: https://rubygems.org/
33
specs:
4-
blankslate (2.1.2.4)
5-
celluloid (0.15.2)
6-
timers (~> 1.1.0)
7-
classifier (1.3.4)
8-
fast-stemmer (>= 1.0.0)
9-
coffee-script (2.2.0)
10-
coffee-script-source
11-
execjs
12-
coffee-script-source (1.7.0)
13-
colorator (0.1)
14-
execjs (2.2.0)
15-
fast-stemmer (1.0.2)
16-
ffi (1.9.3)
17-
jekyll (2.0.3)
18-
classifier (~> 1.3)
19-
colorator (~> 0.1)
20-
jekyll-coffeescript (~> 1.0)
4+
addressable (2.5.2)
5+
public_suffix (>= 2.0.2, < 4.0)
6+
colorator (1.1.0)
7+
ffi (1.9.23)
8+
forwardable-extended (2.6.0)
9+
jekyll (3.4.5)
10+
addressable (~> 2.4)
11+
colorator (~> 1.0)
2112
jekyll-sass-converter (~> 1.0)
13+
jekyll-watch (~> 1.1)
2214
kramdown (~> 1.3)
23-
liquid (~> 2.5.5)
24-
listen (~> 2.5)
15+
liquid (~> 3.0)
2516
mercenary (~> 0.3.3)
26-
pygments.rb (~> 0.5.0)
27-
redcarpet (~> 3.1)
17+
pathutil (~> 0.9)
18+
rouge (~> 1.7)
2819
safe_yaml (~> 1.0)
29-
toml (~> 0.1.0)
30-
jekyll-coffeescript (1.0.0)
31-
coffee-script (~> 2.2)
32-
jekyll-sass-converter (1.0.0)
33-
sass (~> 3.2)
34-
kramdown (1.4.0)
35-
liquid (2.5.5)
36-
listen (2.7.8)
37-
celluloid (>= 0.15.2)
38-
rb-fsevent (>= 0.9.3)
39-
rb-inotify (>= 0.9)
40-
mercenary (0.3.3)
41-
parslet (1.5.0)
42-
blankslate (~> 2.0)
43-
posix-spawn (0.3.8)
44-
pygments.rb (0.5.4)
45-
posix-spawn (~> 0.3.6)
46-
yajl-ruby (~> 1.1.0)
47-
rb-fsevent (0.9.4)
48-
rb-inotify (0.9.5)
49-
ffi (>= 0.5.0)
50-
redcarpet (3.1.2)
20+
jekyll-sass-converter (1.5.2)
21+
sass (~> 3.4)
22+
jekyll-watch (1.5.0)
23+
listen (~> 3.0, < 3.1)
24+
json (2.1.0)
25+
kramdown (1.16.2)
26+
liquid (3.0.6)
27+
listen (3.0.8)
28+
rb-fsevent (~> 0.9, >= 0.9.4)
29+
rb-inotify (~> 0.9, >= 0.9.7)
30+
mercenary (0.3.6)
31+
multi_json (1.13.1)
32+
pathutil (0.16.1)
33+
forwardable-extended (~> 2.6)
34+
public_suffix (2.0.5)
35+
pygments.rb (1.2.1)
36+
multi_json (>= 1.0.0)
37+
rb-fsevent (0.10.3)
38+
rb-inotify (0.9.10)
39+
ffi (>= 0.5.0, < 2)
40+
redcarpet (3.4.0)
41+
rouge (1.11.1)
5142
safe_yaml (1.0.4)
52-
sass (3.3.8)
53-
timers (1.1.0)
54-
toml (0.1.1)
55-
parslet (~> 1.5.0)
56-
yajl-ruby (1.1.0)
43+
sass (3.5.6)
44+
sass-listen (~> 4.0.0)
45+
sass-listen (4.0.0)
46+
rb-fsevent (~> 0.9, >= 0.9.4)
47+
rb-inotify (~> 0.9, >= 0.9.7)
5748

5849
PLATFORMS
5950
ruby
6051

6152
DEPENDENCIES
62-
jekyll
53+
jekyll (= 3.4.5)
54+
json (= 2.1.0)
55+
pygments.rb (= 1.2.1)
56+
redcarpet (= 3.4.0)
57+
58+
BUNDLED WITH
59+
1.16.1

docs/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,15 @@ Samza's documentation uses Jekyll to build a website out of markdown pages. Prer
2424

2525
To serve the website on [localhost:4000](http://localhost:4000/):
2626

27-
bundle exec jekyll serve --watch --baseurl
27+
bundle exec jekyll serve --watch --baseurl ""
2828

2929
To compile the website in the \_site directory, execute:
3030

3131
bundle exec jekyll build
3232

3333
To test the site, run:
3434

35-
bundle exec jekyll serve --watch --baseurl
35+
bundle exec jekyll serve --watch --baseurl ""
3636

3737
## Versioning
3838

docs/community/committers.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,17 +30,17 @@ Committer, and PMC member<br/>
3030
<a href="https://twitter.com/navina_r" target="_blank"><i class="fa fa-twitter committer-icon"></i></a>
3131

3232
**Jagadish Venkatraman**<br/>
33-
Committer<br/>
33+
Committer, and PMC member<br/>
3434
<a href="https://www.linkedin.com/in/jagadishvenkat" target="_blank"><i class="fa fa-linkedin committer-icon"></i></a>
3535
<a href="https://twitter.com/vjagadish1989" target="_blank"><i class="fa fa-twitter committer-icon"></i></a>
3636

3737
**Jake Maes**<br/>
38-
Committer<br/>
38+
Committer, and PMC member<br/>
3939
<a href="www.linkedin.com/in/jacobmaes" target="_blank"><i class="fa fa-linkedin committer-icon"></i></a>
4040
<a href="https://twitter.com/jakemaes" target="_blank"><i class="fa fa-twitter committer-icon"></i></a>
4141

4242
**Xinyu Liu**<br/>
43-
Committer<br/>
43+
Committer, and PMC member<br/>
4444
<a href="https://www.linkedin.com/in/xinyu-liu-b0b21648" target="_blank"><i class="fa fa-linkedin committer-icon"></i></a>
4545

4646
**Chris Riccomini**<br/>
@@ -95,4 +95,4 @@ Committer<br/>
9595

9696
**Prateek Maheshwari**<br/>
9797
Committer<br/>
98-
<a href="https://www.linkedin.com/in/mprateek" target="_blank"><i class="fa fa-linkedin committer-icon"></i></a>
98+
<a href="https://www.linkedin.com/in/mprateek" target="_blank"><i class="fa fa-linkedin committer-icon"></i></a>

docs/learn/documentation/versioned/azure/eventhubs.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,10 @@ collector.send(envelope);
5858

5959
Each [OutgoingMessageEnvelope](https://samza.apache.org/learn/documentation/latest/api/javadocs/org/apache/samza/system/OutgoingMessageEnvelope.html) is converted into an [EventData](https://docs.microsoft.com/en-us/java/api/com.microsoft.azure.eventhubs._event_data) instance whose body is set to the `message` in the envelope. Additionally, the `key` and the `produce timestamp` are set as properties in the EventData before sending it to EventHubs.
6060

61+
#### Size limit of partition key:
62+
63+
Note that EventHubs has a limit on the length of partition key (128 characters). In [EventHubSystemProducer](https://github.com/apache/samza/blob/master/samza-azure/src/main/java/org/apache/samza/system/eventhub/producer/EventHubSystemProducer.java) we truncate the partition key if the size of the key exceeds the limit.
64+
6165
### Advanced configuration:
6266

6367
##### Producer partitioning:
@@ -165,7 +169,7 @@ With the environment setup complete, let us move on to building the hello-samza
165169
```
166170
mvn clean package
167171
mkdir -p deploy/samza
168-
tar -xvf ./target/hello-samza-0.14.1-SNAPSHOT-dist.tar.gz -C deploy/samza
172+
tar -xvf ./target/hello-samza-0.15.0-SNAPSHOT-dist.tar.gz -C deploy/samza
169173
```
170174

171175
We are now all set to deploy the application locally.

0 commit comments

Comments
 (0)