flock-lab / flock

Flock: A Low-Cost Streaming Query Engine on FaaS Platforms
https://flock-lab.github.io/flock/
GNU Affero General Public License v3.0
291 stars 39 forks source link

build(deps): update dashmap requirement from 4.0.2 to 5.0.0 #355

Closed dependabot[bot] closed 2 years ago

dependabot[bot] commented 2 years ago

Updates the requirements on dashmap to permit the latest version.

Release notes

Sourced from dashmap's releases.

v5.0.0

Hey ho buckaroo!

v5.0.0 is a maintenance release introducing minor breaking API changes and new features.

Changelog:

  • Switch to parking_lot for locking
  • Support serde and FromIterator for custom hashers
  • Implement Clone for Iter
  • Add scoped access view() method
  • Specify more explicit lifetimes
  • Add remove_if_mut method
  • Update MSRV and dev toolchains to 1.49

Thanks to all contributors that helped make this release possible.

Joel (xacrimon) Wejdenstål

Commits


Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
CLAassistant commented 2 years ago

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

gangliao commented 2 years ago

We don't need dashmap to handle concurrency and sync inside the lambda function. This is because Lambda doesn't send more than one invocation at a time to the same container. The container is not used for a second invocation until the first one finishes. If a second request arrives while the first one is running, the second one will run in a different container if its function concurrency > 1.

Our code can, of course, be written to use multiple threads and/or child processes to accomplish whatever purpose it is intended to accomplish for one invocation.


This is a limitation of the AWS Lambda function. In the future, we can support Google Cloud Functions, which launched a new feature: Per-instance concurrency: https://github.com/flock-lab/flock/issues/327

Many traditional applications run poorly when constrained to a single-request model that’s common in FaaS platforms. Cloud Run allows for up to 1,000 concurrent requests on a single instance of an application, providing a far greater level of efficiency.

In order to take advantage of the different architectures and features of different cloud platforms, Flock will support the cloud function services of all cloud vendors such as AWS Lambda, GCP Function, and Azure Function. For now, we can replace hashmap with a non-thread-safe hashmap in rust std::collection.