[openwhisk] branch master updated: Base on OpenJ9 to overcome performance problems (#4840)

2020-02-25 Thread markusthoemmes
This is an automated email from the ASF dual-hosted git repository.

markusthoemmes pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk.git


The following commit(s) were added to refs/heads/master by this push:
 new fcdca86  Base on OpenJ9 to overcome performance problems (#4840)
fcdca86 is described below

commit fcdca864805356841ce0915bf861b3d87c914bb2
Author: Martin Henke 
AuthorDate: Wed Feb 26 08:19:18 2020 +0100

Base on OpenJ9 to overcome performance problems (#4840)

Downstream tests showed severe degradation with OpenJDK in latency and war 
invocation tests which disappeard with using OpenJ9 instead.

OpenJ9 is Apache licenced.

Co-authored-by: Falk Zoll 
---
 common/scala/Dockerfile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/scala/Dockerfile b/common/scala/Dockerfile
index 8f52eff..0c6ba98 100644
--- a/common/scala/Dockerfile
+++ b/common/scala/Dockerfile
@@ -14,7 +14,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-FROM adoptopenjdk/openjdk11:x86_64-alpine-jdk-11.0.3_7
+FROM adoptopenjdk/openjdk11-openj9:x86_64-alpine-jdk-11.0.6_10_openj9-0.18.1
 
 ENV LANG en_US.UTF-8
 ENV LANGUAGE en_US:en



[openwhisk] branch master updated: Fix broken links. (#4832)

2020-02-25 Thread style95
This is an automated email from the ASF dual-hosted git repository.

style95 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk.git


The following commit(s) were added to refs/heads/master by this push:
 new dab68ec  Fix broken links. (#4832)
dab68ec is described below

commit dab68ece3e24a426a844ccdb992c176b9d06b8fa
Author: Dominic Kim 
AuthorDate: Wed Feb 26 09:42:20 2020 +0900

Fix broken links. (#4832)
---
 proposals/POEM-1-proposal-for-openwhisk-enhancements.md | 2 +-
 proposals/README.md | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/proposals/POEM-1-proposal-for-openwhisk-enhancements.md 
b/proposals/POEM-1-proposal-for-openwhisk-enhancements.md
index 7cdcf00..cfed8c3 100644
--- a/proposals/POEM-1-proposal-for-openwhisk-enhancements.md
+++ b/proposals/POEM-1-proposal-for-openwhisk-enhancements.md
@@ -39,7 +39,7 @@ The goals are to enhance the discoverability of proposals, 
and to help community
 
 ### Procedures
 1. Create a pull request to describe your proposal with [this 
template](./POEM-N-template.md). The initial state of a proposal should be 
_"Draft"_.
-2. [Create a corresponding issue]((../../../issues/new?template=proposal.md)) 
to propose a new change based on [this 
template](../github/ISSUE_TEMPLATE/proposal.md). It is mainly used to track 
discussion history.
+2. [Create a corresponding 
issue](https://github.com/apache/openwhisk/issues/new?template=proposal.md) to 
propose a new change based on [this 
template](../.github/ISSUE_TEMPLATE/proposal.md). It is mainly used to track 
discussion history.
 3. Discuss the proposals using to form a consensus and update your proposal 
based on comments as needed. It is important to be inclusive, and to notify the 
OpenWhisk community of meaningful changes using the Apache [`dev` 
list](https://openwhisk.apache.org/community.html) for this project. Other 
forms of communication such as Slack are OK but any meaningful results should 
be documented in issues and the `dev` list.
 4. When members form a rough consensus for the proposal. The proposal owner 
can request a vote via the dev mailing list.
 5. The voting process follows the [Apache Voting 
guideline](https://www.apache.org/foundation/voting.html). The PR can be merged 
with the _"In-progress"_ state if the voting is successfully closed without any 
veto.
diff --git a/proposals/README.md b/proposals/README.md
index 0c3b57a..b633d8d 100644
--- a/proposals/README.md
+++ b/proposals/README.md
@@ -26,7 +26,7 @@ You can find the full details in 
[POEM-1](./POEM-1-proposal-for-openwhisk-enhanc
 
 ## Quickstart to propose a new change.
 1. Copy the [POEM template](./POEM-N-template.md) and open a pull request.
-2. [Create a corresponding issue](/issues/new?template=proposal.md) with the 
prefix, `[Proposal]` in the title.
+2. [Create a corresponding 
issue](https://github.com/apache/openwhisk/issues/new?template=proposal.md) 
with the prefix, `[Proposal]` in the title.
 3. Follow the process outlined in the 
[POEM-1](./POEM-1-proposal-for-openwhisk-enhancements.md).
 
 ## When should I open a proposal?



[openwhisk-wskdebug] branch master updated: Update .asf.yaml

2020-02-25 Thread dgrove
This is an automated email from the ASF dual-hosted git repository.

dgrove pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-wskdebug.git


The following commit(s) were added to refs/heads/master by this push:
 new a0e16b7  Update .asf.yaml
a0e16b7 is described below

commit a0e16b7972e2de67990a647c97f6901a626e8446
Author: David Grove 
AuthorDate: Tue Feb 25 16:56:20 2020 -0500

Update .asf.yaml
---
 .asf.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.asf.yaml b/.asf.yaml
index a22ae91..1611656 100644
--- a/.asf.yaml
+++ b/.asf.yaml
@@ -16,7 +16,7 @@
 #
 
 github:
-  description: "Apache OpenWhisk is an open source serverless cloud platform"
+  description: "Debugging and live development tool for Apache OpenWhisk "
   homepage: https://openwhisk.apache.org/
   labels:
   - openwhisk



[openwhisk-wskdebug] 01/01: ASF github metadata

2020-02-25 Thread dgrove
This is an automated email from the ASF dual-hosted git repository.

dgrove pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-wskdebug.git

commit 30cb8de2fc5c3a814e53695b91a90a61b33f102e
Author: David Grove 
AuthorDate: Tue Feb 25 16:46:02 2020 -0500

ASF github metadata
---
 .asf.yaml | 32 
 1 file changed, 32 insertions(+)

diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 000..a22ae91
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,32 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+github:
+  description: "Apache OpenWhisk is an open source serverless cloud platform"
+  homepage: https://openwhisk.apache.org/
+  labels:
+  - openwhisk
+  - apache
+  - serverless
+  - faas
+  - functions-as-a-service
+  - cloud
+  - serverless-architectures
+  - serverless-functions
+  - docker
+  - kubernetes
+  - functions



[openwhisk-wskdebug] branch master created (now 30cb8de)

2020-02-25 Thread dgrove
This is an automated email from the ASF dual-hosted git repository.

dgrove pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-wskdebug.git.


  at 30cb8de  ASF github metadata

This branch includes the following new commits:

 new 30cb8de  ASF github metadata

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.




[openwhisk-cli] annotated tag latest updated (c5daef0 -> 0a0fd89)

2020-02-25 Thread csantanapr
This is an automated email from the ASF dual-hosted git repository.

csantanapr pushed a change to annotated tag latest
in repository https://gitbox.apache.org/repos/asf/openwhisk-cli.git.


*** WARNING: tag latest was modified! ***

from c5daef0  (commit)
  to 0a0fd89  (tag)
 tagging c5daef0c036930e7f0c05b2dc65d3fba89c6dca0 (commit)
 replaces 1.0.0
  by Travis CI
  on Tue Feb 25 12:35:16 2020 -0500

- Log -
Generated tag from Travis CI build 2071
---


No new revisions were added by this update.

Summary of changes:



[openwhisk-cli] branch master updated: Trigger parameter issue (#479)

2020-02-25 Thread dubeejw
This is an automated email from the ASF dual-hosted git repository.

dubeejw pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-cli.git


The following commit(s) were added to refs/heads/master by this push:
 new c5daef0  Trigger parameter issue (#479)
c5daef0 is described below

commit c5daef0c036930e7f0c05b2dc65d3fba89c6dca0
Author: steven0711dong <53186782+steven0711d...@users.noreply.github.com>
AuthorDate: Tue Feb 25 12:35:16 2020 -0500

Trigger parameter issue (#479)

* allow trigger feed and trigger parameters
---
 commands/commands.go   |  38 ++-
 commands/flags.go  |   4 +-
 commands/trigger.go| 260 ++---
 .../test/scala/system/basic/WskCliBasicTests.scala |  97 
 wski18n/resources/en_US.all.json   |  16 ++
 5 files changed, 379 insertions(+), 36 deletions(-)

diff --git a/commands/commands.go b/commands/commands.go
index cbc1ce5..f6b2ab0 100644
--- a/commands/commands.go
+++ b/commands/commands.go
@@ -131,9 +131,11 @@ func getValueFromArgs(args []string, argIndex int, 
parsedArgs []string) ([]strin
return parsedArgs, args, whiskErr
 }
 
-func parseArgs(args []string) ([]string, []string, []string, error) {
+func parseArgs(args []string) ([]string, []string, []string, []string, 
[]string, error) {
var paramArgs []string
var annotArgs []string
+   var feedParamArgs []string
+   var triggerParamArgs []string
var whiskErr error
 
i := 0
@@ -147,14 +149,14 @@ func parseArgs(args []string) ([]string, []string, 
[]string, error) {
map[string]interface{}{"err": whiskErr})
whiskErr = 
whisk.MakeWskError(errors.New(errMsg), whisk.EXIT_CODE_ERR_GENERAL, 
whisk.DISPLAY_MSG,
whisk.DISPLAY_USAGE)
-   return nil, nil, nil, whiskErr
+   return nil, nil, nil, nil, nil, whiskErr
}
 
filename := paramArgs[len(paramArgs)-1]
paramArgs[len(paramArgs)-1], whiskErr = 
ReadFile(filename)
if whiskErr != nil {
whisk.Debug(whisk.DbgError, "readFile(%s) 
error: %s\n", filename, whiskErr)
-   return nil, nil, nil, whiskErr
+   return nil, nil, nil, nil, nil, whiskErr
}
} else if args[i] == "-A" || args[i] == "--annotation-file" {
annotArgs, args, whiskErr = getValueFromArgs(args, i, 
annotArgs)
@@ -164,14 +166,14 @@ func parseArgs(args []string) ([]string, []string, 
[]string, error) {
map[string]interface{}{"err": whiskErr})
whiskErr = 
whisk.MakeWskError(errors.New(errMsg), whisk.EXIT_CODE_ERR_GENERAL, 
whisk.DISPLAY_MSG,
whisk.DISPLAY_USAGE)
-   return nil, nil, nil, whiskErr
+   return nil, nil, nil, nil, nil, whiskErr
}
 
filename := annotArgs[len(annotArgs)-1]
annotArgs[len(annotArgs)-1], whiskErr = 
ReadFile(filename)
if whiskErr != nil {
whisk.Debug(whisk.DbgError, "readFile(%s) 
error: %s\n", filename, whiskErr)
-   return nil, nil, nil, whiskErr
+   return nil, nil, nil, nil, nil, whiskErr
}
} else if args[i] == "-p" || args[i] == "--param" {
paramArgs, args, whiskErr = getKeyValueArgs(args, i, 
paramArgs)
@@ -181,7 +183,7 @@ func parseArgs(args []string) ([]string, []string, 
[]string, error) {
map[string]interface{}{"err": whiskErr})
whiskErr = 
whisk.MakeWskError(errors.New(errMsg), whisk.EXIT_CODE_ERR_GENERAL, 
whisk.DISPLAY_MSG,
whisk.DISPLAY_USAGE)
-   return nil, nil, nil, whiskErr
+   return nil, nil, nil, nil, nil, whiskErr
}
} else if args[i] == "-a" || args[i] == "--annotation" {
annotArgs, args, whiskErr = getKeyValueArgs(args, i, 
annotArgs)
@@ -191,7 +193,23 @@ func parseArgs(args []string) ([]string, []string, 
[]string, error) {
map[string]interface{}{"err": whiskErr})
whiskErr = 
whisk.MakeWskError(errors.New(errMsg), whisk.EXIT_CODE_ERR_GENERAL, 
whisk.DISPLAY_MSG,
whisk.DISPLAY_USAGE)
- 

[CONF] OpenWhisk > 2020-02-19 OW Tech Interchange Meeting Notes

2020-02-25 Thread Rodric Rabbah (Confluence)
Title: Message Title



 
 
 
There's 2 new edits on this page 
 
 
 
 
 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2020-02-19 OW Tech Interchange Meeting Notes 
 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
Rodric Rabbah edited this page 
 
 
  
 
 

 
 
 
  
 
 
  
 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Here's what changed: 
 
 
 
 
 
 
 
 
 
 
  Notes:  
 
  Rodricis moderating today   
  Next meeting on 2020-03-04 (Justin moderating) at 10am eastern 
  Attendees: Dave, Olivier, Tyson, Dan, Neeraj, Justin, Rodric, others I cannot remember (Sorry)   
  Meeting video: None, could not record.   
 Presentation:  
 Scheduled Topics:  
 
 PR review 
 
 Enhanced action loop proxy, applied to all python runtimes  
 New Typescript native support  
 Next release should replace runtimes with new action loop versions in terms of using the old names for the new runtimes  
 Java 11 accept it, open issue to update image to open J9  
 Parameter encryption, needs final reviews  
 Other PRs noted are either ready to merge or help is needed to review  
  
 Release plans 
 
 Dave gave overview of remaining tasks (main task is replacing node 6 runtime dependence in providers)  
  
  Containerless functions  
 
 Motivation for containerless functions, v8 and wasm  
 Goals of early experimentation (quantify benefits)  
 Experimental setup, and results  
 Prototype integration with standalone controller  
 POEM-2 next step  
  
 
 
 
  
 
 
  
 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Go to page history 
 
 
  
 
 
  
 
 
  
 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
View page 
 
 
  
 
 
  
 
 
  
 
 
  
 
 
 
 
 
 
 
 
 
 
Stop watching space
• 
 
 
 
 
 
 
Manage notifications 
 
 
 
 
 
 
 
 
 
 
  
 
 
This message was sent by Atlassian Confluence 7.1.2  
 
 
  
 
 
 
 
 
 
 
 
 




[CONF] OpenWhisk > 2020-02-19 OW Tech Interchange Meeting Notes

2020-02-25 Thread Rodric Rabbah (Confluence)
Title: Message Title



 
 
 
 
 
 
 

Rodric Rabbah added a file to a page 
 
 
  
 
 
 
 
 
 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
200219-apache.pdf 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

2020-02-19 OW Tech Interchange Meeting Notes 
 
 
  
 
 
  
 
 
  
 
 
  
 
 
  
 
 
 
 
 
 
 
 
 
 
Stop watching space
• 
 
 
 
 
 
 
Manage notifications 
 
 
 
 
 
 
 
 
 
 
  
 
 
This message was sent by Atlassian Confluence 7.1.2  
 
 
  
 
 
 
 
 
 
 
 
 




[openwhisk] branch master updated: Remove usages of Unit as a value. (#4838)

2020-02-25 Thread rabbah
This is an automated email from the ASF dual-hosted git repository.

rabbah pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk.git


The following commit(s) were added to refs/heads/master by this push:
 new 6219e8c  Remove usages of Unit as a value. (#4838)
6219e8c is described below

commit 6219e8c762ab7d1398434ab5d416dfeaeee9774a
Author: Markus Thömmes 
AuthorDate: Tue Feb 25 13:53:54 2020 +0100

Remove usages of Unit as a value. (#4838)

Scala 2.13 forbids using Unit (the type) in a return expression. Switched 
occurrences to use the "proper" Unit value.
---
 .../org/apache/openwhisk/core/database/RemoteCacheInvalidation.scala  | 2 +-
 .../scala/org/apache/openwhisk/core/mesos/MesosContainerFactory.scala | 2 +-
 .../src/main/scala/org/apache/openwhisk/core/yarn/YARNTask.scala  | 2 +-
 .../main/scala/org/apache/openwhisk/core/database/UserCommand.scala   | 4 ++--
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git 
a/common/scala/src/main/scala/org/apache/openwhisk/core/database/RemoteCacheInvalidation.scala
 
b/common/scala/src/main/scala/org/apache/openwhisk/core/database/RemoteCacheInvalidation.scala
index 62d06c8..c8c432b 100644
--- 
a/common/scala/src/main/scala/org/apache/openwhisk/core/database/RemoteCacheInvalidation.scala
+++ 
b/common/scala/src/main/scala/org/apache/openwhisk/core/database/RemoteCacheInvalidation.scala
@@ -65,7 +65,7 @@ class RemoteCacheInvalidation(config: WhiskConfig, component: 
String, instance:
   private val cacheInvalidationProducer = msgProvider.getProducer(config)
 
   def notifyOtherInstancesAboutInvalidation(key: CacheKey): Future[Unit] = {
-cacheInvalidationProducer.send(cacheInvalidationTopic, 
CacheInvalidationMessage(key, instanceId)).map(_ => Unit)
+cacheInvalidationProducer.send(cacheInvalidationTopic, 
CacheInvalidationMessage(key, instanceId)).map(_ => ())
   }
 
   private val invalidationFeed = as.actorOf(Props {
diff --git 
a/common/scala/src/main/scala/org/apache/openwhisk/core/mesos/MesosContainerFactory.scala
 
b/common/scala/src/main/scala/org/apache/openwhisk/core/mesos/MesosContainerFactory.scala
index fab8597..b44d147 100644
--- 
a/common/scala/src/main/scala/org/apache/openwhisk/core/mesos/MesosContainerFactory.scala
+++ 
b/common/scala/src/main/scala/org/apache/openwhisk/core/mesos/MesosContainerFactory.scala
@@ -178,7 +178,7 @@ class MesosContainerFactory(config: WhiskConfig,
   }
 })
 
-  override def init(): Unit = Unit
+  override def init(): Unit = ()
 
   /** Cleanups any remaining Containers; should block until complete; should 
ONLY be run at shutdown. */
   override def cleanup(): Unit = {
diff --git 
a/common/scala/src/main/scala/org/apache/openwhisk/core/yarn/YARNTask.scala 
b/common/scala/src/main/scala/org/apache/openwhisk/core/yarn/YARNTask.scala
index 714a04e..0f98853 100644
--- a/common/scala/src/main/scala/org/apache/openwhisk/core/yarn/YARNTask.scala
+++ b/common/scala/src/main/scala/org/apache/openwhisk/core/yarn/YARNTask.scala
@@ -64,7 +64,7 @@ class YARNTask(override protected val id: ContainerId,
   /** Dual of halt. */
   override def resume()(implicit transid: TransactionId): Future[Unit] = {
 // resume not supported
-Future.successful(Unit)
+Future.successful(())
   }
 
   /** Completely destroys this instance of the container. */
diff --git 
a/tools/admin/src/main/scala/org/apache/openwhisk/core/database/UserCommand.scala
 
b/tools/admin/src/main/scala/org/apache/openwhisk/core/database/UserCommand.scala
index 4e4247b..6f41f63 100644
--- 
a/tools/admin/src/main/scala/org/apache/openwhisk/core/database/UserCommand.scala
+++ 
b/tools/admin/src/main/scala/org/apache/openwhisk/core/database/UserCommand.scala
@@ -59,7 +59,7 @@ class UserCommand extends Subcommand("user") with 
WhiskCommand {
   if (s.length < 5) {
 Left(CommandMessages.shortName)
   } else {
-Right(Unit)
+Right(())
   }
 }
 
@@ -71,7 +71,7 @@ class UserCommand extends Subcommand("user") with 
WhiskCommand {
   } else if (!isUUID(uuid)) {
 Left(CommandMessages.invalidUUID)
   } else {
-Right(Unit)
+Right(())
   }
 case _ => Left(s"failed to determine authorization id and key: $a")
   }



[openwhisk] branch master updated: Some small compilation fixes for 2.13 migration. (#4836)

2020-02-25 Thread markusthoemmes
This is an automated email from the ASF dual-hosted git repository.

markusthoemmes pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk.git


The following commit(s) were added to refs/heads/master by this push:
 new 01b4963  Some small compilation fixes for 2.13 migration. (#4836)
01b4963 is described below

commit 01b4963c233835c06bac29b3831e75553f3e2cae
Author: Markus Thömmes 
AuthorDate: Tue Feb 25 11:02:43 2020 +0100

Some small compilation fixes for 2.13 migration. (#4836)
---
 .../scala/org/apache/openwhisk/core/connector/Message.scala   |  2 +-
 .../core/database/cosmosdb/CosmosDBArtifactStore.scala|  2 +-
 .../openwhisk/core/database/cosmosdb/CosmosDBSupport.scala| 11 ++-
 .../scala/org/apache/openwhisk/core/mesos/MesosTask.scala |  2 +-
 .../core/database/cosmosdb/CosmosDBArtifactStoreTests.scala   |  2 +-
 5 files changed, 14 insertions(+), 5 deletions(-)

diff --git 
a/common/scala/src/main/scala/org/apache/openwhisk/core/connector/Message.scala 
b/common/scala/src/main/scala/org/apache/openwhisk/core/connector/Message.scala
index fdd024d..4326109 100644
--- 
a/common/scala/src/main/scala/org/apache/openwhisk/core/connector/Message.scala
+++ 
b/common/scala/src/main/scala/org/apache/openwhisk/core/connector/Message.scala
@@ -357,7 +357,7 @@ object Activation extends DefaultJsonProtocol {
 
 statusCode match {
   case Some(value) =>
-Try { value.convertTo[BigInt].intValue() } match {
+Try { value.convertTo[BigInt].intValue } match {
   case Failure(_)=> Some(BadRequest.intValue)
   case Success(code) => Some(code)
 }
diff --git 
a/common/scala/src/main/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBArtifactStore.scala
 
b/common/scala/src/main/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBArtifactStore.scala
index 0ad9ab5..038c86a 100644
--- 
a/common/scala/src/main/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBArtifactStore.scala
+++ 
b/common/scala/src/main/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBArtifactStore.scala
@@ -365,7 +365,7 @@ class CosmosDBArtifactStore[DocumentAbstraction <: 
DocumentSerializer](protected
 val g = f.andThen {
   case Success(queryResult) =>
 if (queryMetrics.nonEmpty) {
-  val combinedMetrics = QueryMetrics.ZERO.add(queryMetrics: _*)
+  val combinedMetrics = QueryMetrics.ZERO.add(queryMetrics.toSeq: _*)
   logging.debug(
 this,
 s"[QueryMetricsEnabled] Collection [$collName] - Query 
[${querySpec.getQueryText}].\nQueryMetrics\n[$combinedMetrics]")
diff --git 
a/common/scala/src/main/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBSupport.scala
 
b/common/scala/src/main/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBSupport.scala
index 5532bf1..bcec58d 100644
--- 
a/common/scala/src/main/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBSupport.scala
+++ 
b/common/scala/src/main/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBSupport.scala
@@ -17,7 +17,16 @@
 
 package org.apache.openwhisk.core.database.cosmosdb
 
-import com.microsoft.azure.cosmosdb._
+import com.microsoft.azure.cosmosdb.{
+  Database,
+  DocumentCollection,
+  FeedResponse,
+  RequestOptions,
+  Resource,
+  SqlParameter,
+  SqlParameterCollection,
+  SqlQuerySpec
+}
 import com.microsoft.azure.cosmosdb.rx.AsyncDocumentClient
 import org.apache.openwhisk.common.Logging
 
diff --git 
a/common/scala/src/main/scala/org/apache/openwhisk/core/mesos/MesosTask.scala 
b/common/scala/src/main/scala/org/apache/openwhisk/core/mesos/MesosTask.scala
index a6abec4..fc42b24 100644
--- 
a/common/scala/src/main/scala/org/apache/openwhisk/core/mesos/MesosTask.scala
+++ 
b/common/scala/src/main/scala/org/apache/openwhisk/core/mesos/MesosTask.scala
@@ -97,7 +97,7 @@ object MesosTask {
   case "host"   => Host
   case _=> User(network)
 }
-val dnsOrEmpty = if (dnsServers.nonEmpty) Map("dns" -> dnsServers.toSet) 
else Map.empty
+val dnsOrEmpty = if (dnsServers.nonEmpty) Map("dns" -> dnsServers.toSet) 
else Map.empty[String, Set[String]]
 
 //transform our config to mesos-actor config:
 val healthCheckConfig = mesosConfig.healthCheck.map(
diff --git 
a/tests/src/test/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBArtifactStoreTests.scala
 
b/tests/src/test/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBArtifactStoreTests.scala
index 566d2ba..a5c6fc9 100644
--- 
a/tests/src/test/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBArtifactStoreTests.scala
+++ 
b/tests/src/test/scala/org/apache/openwhisk/core/database/cosmosdb/CosmosDBArtifactStoreTests.scala
@@ -186,7 +186,7 @@ class CosmosDBArtifactStoreTests extends FlatSpec with 
CosmosDBStoreBehaviorBase
 //would increment a counter
 if (TransactionId.metricsKamonTags) {