Commit Graph

606 Commits

Author SHA1 Message Date
Balaji Jinnah a6a369bc14
Route all the failed message to dead letter children. (#181)
Signed-off-by: Tiger <rbalajis25@gmail.com>
2020-06-22 16:16:49 +02:00
Mahmut Bulut 2ebe1a88d4
Make with_exec non-sync (#219)
* Make with_exec non-sync, it is going to be sync anyway

* Constrain spawn

* Remove default feature
2020-06-22 14:09:16 +02:00
Benoit Chassignol 86be685964
Add overview from bastion ecosystem (#211)
* init pr and collect readme information

* rewrite some part

* add introduction
2020-06-19 14:00:10 +02:00
Mahmut Bulut e68a6f3402
Update README.md 2020-06-19 13:18:47 +02:00
Mahmut Bulut 530ebc01e3
Bastion Cluster mode (#213)
* local

* Distributed explanation

* Add back proptests

* fix deps

* Artillery first version released

* Apply formatting and checks

* Disable defaults

* Move cluster example

* Organize docs
2020-06-19 13:16:31 +02:00
dependabot-preview[bot] 1ac60239c4
Update proptest requirement from 0.9 to 0.10 (#209)
Updates the requirements on [proptest](https://github.com/altsysrq/proptest) to permit the latest version.
- [Release notes](https://github.com/altsysrq/proptest/releases)
- [Changelog](https://github.com/AltSysrq/proptest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/altsysrq/proptest/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-30 23:04:03 +02:00
Mahmut Bulut 8786d32daa
Lever – Hello transactional memory (#207)
* Hello transactional memory

* Lever version update

* Seems like rust-lang/miri#1318 is not ready yet. Disable leak checks until stabilization

* disable leak checks for all of the tests
2020-05-19 17:32:30 +02:00
Yiyu Lin d2ec303501
feat: use `tracing` as the log crate, and remove `log` crate (#206)
* feat: use `tracing` as the log crate, and remove `log` crate
add example in boardcast_message so the user can change the log level
fix some warning

* no need delete DWORD32 and PDWORD32
2020-05-16 14:29:41 +02:00
Yiyu Lin 4af8a4864b
add name for children (#205)
add rustfmt.toml
fix two warnings

Co-authored-by: Mahmut Bulut <vertexclique@gmail.com>
2020-05-11 22:47:25 +02:00
o0Ignition0o f27dc39c9f Prime numbers example.
Now this example is pretty cool.
We have children that serve prime numbers and return them.
We have a supervisor that takes care of children and restarts them if
one fails.
We are using a usize as request type, but a fully fledged Response type
as a result.
info!() logs the successes.
Summary displays how long the program took, and how many failures there
were.
2020-05-10 22:08:43 +02:00
Jeremy Lempereur b3448d894c
Fibonacci example with comments. (#203) 2020-05-08 16:39:57 +02:00
Mahmut Bulut 134bce79b7
Fix dead links in README 2020-04-14 18:58:30 +02:00
Valeryi Savich 36875e78ba
Merge pull request #200 from bastion-rs/reorganization-latest
Reorganization of the subprojects.
2020-04-14 16:48:53 +03:00
Mahmut Bulut 18c589a168 Reorg PR 2020-04-14 15:35:04 +02:00
Valeryi Savich 7219d1f732
Preserving actor's mailbox (#199)
* Wrapped messages into Pin<T>

* Added InstantiatedChild message type

* Refactored restarting failed actors

* Refactored restart method

* Added RestartSubtree message type

* Added implementation for restarting subtree

* Fixed formatting warnings

* Added limits for supervisor restarts

* Added cleaning up for dropped childs

* Added cleaning up records for the finished child

* Removed dead code

* Added callbacks for Child

* Fixed clippy warnings
2020-04-14 15:08:40 +02:00
Jeremy Lempereur 217d41c0dc
Use round-robin as the default dispatcher handler. (#196)
* Use round-robin as the default dispatch handler.

* use Dispatcher::with_type as convenience method
2020-04-04 18:37:39 +02:00
Mahmut Bulut 1edb490b1a
Sanitizers (#195) 2020-04-04 00:33:42 +02:00
Mahmut Bulut b5408dc912
Add miri over here (#194)
* Add miri over here

* Oh la la fix some cargo clippy
2020-04-02 16:19:15 +02:00
Valeryi Savich 9dc4a901ef
Moving state machine handlers into separate functions (#188)
* Refactored Child state machine

* Refactored Child state machine

* Refactored Supervisor state machine

* Refactored System state machine
2020-03-26 14:34:42 +01:00
Mahmut Bulut fd6981d3c1
Update README.md 2020-03-22 11:13:32 +01:00
Mahmut Bulut 451abbafe7
Update README.md 2020-03-22 11:12:48 +01:00
Mahmut Bulut 8cd525e0ac
Definitely prod ready, it is used on prod now 2020-03-22 11:07:45 +01:00
dylan_DPC 217d2aa98e hopefully fixed it 2020-03-21 19:22:36 +01:00
dylan_DPC 369df8ba50 fix bump version 2020-03-21 19:18:34 +01:00
dylan_DPC e7eadebf10 bump version 2020-03-21 18:58:36 +01:00
balaji ecc8c65bbe
Bump MAX_CORE to support more core (#187)
Signed-off-by: Tiger <rbalajis25@gmail.com>
2020-03-18 17:52:57 +01:00
balaji 3992514041
replace lockbased stats with lockless based stats. (#186)
* benchmark stats

Signed-off-by: Tiger <rbalajis25@gmail.com>

* remove unwanted

Signed-off-by: Tiger <rbalajis25@gmail.com>

* clean up

Signed-off-by: Tiger <rbalajis25@gmail.com>

* fix cargo fmt and mean calculation

Signed-off-by: Tiger <rbalajis25@gmail.com>

* Update bastion-executor/src/load_balancer.rs

Co-authored-by: Mahmut Bulut <vertexclique@gmail.com>
2020-03-18 11:58:15 +01:00
Valeryi Savich dd134befbd
Removed excessive register call for dispatchers (#184) 2020-03-13 18:39:14 +01:00
Stupremee 8be674563d
Move answer macro to global scope (#182)
* Move answer macro to global scope

* Format lib.rs file

* Add comment to answer example
2020-03-08 21:38:37 +01:00
Mahmut Bulut 3fd7e92cd1
Update README.md 2020-03-01 18:33:33 +01:00
fossabot 07ce73dd01
Add license scan report and status (#178)
Signed-off-by: fossabot <badges@fossa.io>
2020-03-01 18:32:03 +01:00
Valeryi Savich aa7af6c587
Generic registry support (#167)
* Implemented generic registry for actors

* Added documentation for the Registry entities

* Replaced BastionId onto ChildRef as the key in hashmap

* Renamed Registry to the Dispatcher

* Added NotificationType and BroadcastType enums

* Added GlobalDispatcher struct

* Added documentation for GlobalDispatcher

* Implemented passing messages through the global dispatcher

* Implemented with_dispatcher method for Children

* Added register and remove calls for actors

* Added notify and broadcast_message for the bastion context

* Added tests for Dispatcher struct

* Added register_dispatcher and remove_dispatcher methods

* Added passing local dispatchers to the global dispatcher

* Moved register an actor into the separate method

* Added tests for global dispatcher

* Added documentation for API calls

* Clippy and formatting fixes

* Fixed getting child reference

* Changed api calls to child reference

* Added example with broadcasting messages

* Fixed formatting

* Removed excessive init call

* Code review changes
2020-02-29 23:55:06 +01:00
Valeryi Savich ce7edbef19
Fixed docs for RestartStrategy struct (#170)
Co-authored-by: Mahmut Bulut <vertexclique@gmail.com>
2020-02-25 11:52:05 +01:00
Yuki Okushi 8c3135a650
Set up security policy (#176) 2020-02-25 00:50:53 +01:00
dependabot-preview[bot] 9a5f10fc16
Update snap requirement from 0.2 to 1.0 (#172)
* Update snap requirement from 0.2 to 1.0

Updates the requirements on [snap](https://github.com/BurntSushi/rust-snappy) to permit the latest version.
- [Release notes](https://github.com/BurntSushi/rust-snappy/releases)
- [Commits](https://github.com/BurntSushi/rust-snappy/compare/0.2.0...1.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Fix imports of snappy lib

Co-authored-by: Mahmut Bulut <vertexclique@gmail.com>
2020-02-25 00:00:34 +01:00
enkore 514e4a0bda README: fix some typos 2020-02-24 23:29:24 +01:00
Josh Kuhn c4a745c4e1
Make ChildRef::path and ChildrenRef::path public (#168) 2020-02-10 23:17:23 +01:00
Mahmut Bulut 8f6dc5a338
v0.3.4 CHANGELOG (#165) 2020-01-29 18:11:21 +01:00
Mahmut Bulut 12d7aac1d6 Fix conflicts 2020-01-29 18:09:01 +01:00
Mahmut Bulut 61a980c658
Roll bastion 0.3.4 (#164)
* (cargo-release) version 0.3.4

* Rollup steps

* Freeze versions

* (cargo-release) version 0.3.4

* Freeze bastion-executor versions

* (cargo-release) version 0.3.4

* (cargo-release) start next development iteration 0.3.5-alpha.0

* Commit the upcoming version
2020-01-29 18:06:59 +01:00
Valeryi Savich fd9dc86d88
Removed Pool::recover_async_thread method (#163) 2020-01-29 17:32:21 +01:00
Mahmut Bulut 91cb9c4950 (cargo-release) version 0.3.4 2020-01-29 15:46:26 +01:00
Mahmut Bulut 3561ba0208
Remove debug statements in lightproc code (#162) 2020-01-29 15:16:23 +01:00
Mahmut Bulut e72d87ecf3
Changelog config (#161)
* Changelog config

* Reword documentation
2020-01-29 15:07:03 +01:00
dependabot-preview[bot] be32e2b428
Update futures-timer requirement from 2.0.2 to 3.0.0 (#160)
Updates the requirements on [futures-timer](https://github.com/async-rs/futures-timer) to permit the latest version.
- [Release notes](https://github.com/async-rs/futures-timer/releases)
- [Commits](https://github.com/async-rs/futures-timer/compare/2.0.2...v3.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: Mahmut Bulut <vertexclique@gmail.com>
2020-01-29 14:07:50 +01:00
Yuki Okushi ed604accee Use `actions/checkout@master` in Clippy check (#159)
* Use `actions/checkout@master` in Clippy check

* Remove unnecessary whitespaces
2020-01-28 10:10:38 +01:00
Mahmut Bulut 14c51d630b
Merge pull request #157 from Relrin/feature-max-retries
Max retries support for existing restart strategies
2020-01-22 22:25:16 +01:00
Valeryi Savich 87b40825f7 Fixed formatting warnings 2020-01-22 21:07:19 +02:00
Valeryi Savich 638fefd0df Added tests for the RestartStrategy struct 2020-01-22 20:50:10 +02:00
Valeryi Savich a006c89511 Updated example with restart_strategy 2020-01-22 19:50:03 +02:00