Shane Bryldt
|
43cb4e3468
|
FS-10167: Implemented identity registration and routing, removed subrealms to be revisited later, implemented public event channels and node presence, restructured some code and fixed a number of bugs.
|
2017-09-20 22:07:34 -06:00 |
|
Shane Bryldt
|
af69e2fb5b
|
FS-10167: Temporary commit to retain changes before removing concept of realm/subrealm as per discussions, will revisit this concept later when a real use-case presents itself, tests will not operate correctly in this build as realms are incomplete prior to removal
|
2017-09-13 08:41:40 -06:00 |
|
Shane Bryldt
|
53690120ac
|
FS-10167: Revisited ks_pool to embed the ks_pool_t pointer into the prefix of each allocation, updated libks and libblade to remove unneccessary pool pointers in structures, pool-allocated memory can now be freed without needing to pass the original pool
|
2017-08-03 20:26:07 -06:00 |
|
Shane Bryldt
|
fd3348cafc
|
FS-10167: More work on the event channel workflow, switched callback data back to using void* and the assumption callback will clear the data or that it would be cleaned up by a handle shutdown by allocating within the handle pool. Base tests currently working, committing to sync up linux build
|
2017-08-01 16:30:25 -06:00 |
|
Shane Bryldt
|
c6e60de302
|
FS-10167: Temporary commit for peer review
|
2017-07-25 11:01:07 -06:00 |
|
Shane Bryldt
|
84540ea857
|
FS-10167: Refactoring and cleanup
|
2017-07-12 03:35:49 -06:00 |
|
Shane Bryldt
|
3687a5a0a5
|
FS-10167: Significant cleanup and isolation of code into manager types for better maintainability and easier path to future updates
|
2017-07-03 12:48:46 -06:00 |
|
Shane Bryldt
|
61f8380b70
|
FS-10167: Preliminary version of blade.subscribe is implemented
|
2017-06-09 21:34:02 -06:00 |
|
Shane Bryldt
|
6795fd2e45
|
FS-10167: Added preliminary support for blade.register, currently it is only used to update routes upstream, when a new nodeid is introduced or no longer available a blade.register is passed to update the routing tables. Edge cases are not handled yet.
|
2017-06-06 15:50:38 -06:00 |
|
Shane Bryldt
|
076a9adbf6
|
FS-10167: Preliminary support for blade.execute, tested with a basic test.echo across 3 nodes with a common master. Multitier routing is not yet fully supported
|
2017-06-05 15:29:19 -06:00 |
|
Shane Bryldt
|
cc627e534f
|
FS-10167: Shifted the routing layer to occur slightly lower in the processing stack, which allows routing of messages without creating local pending requests for callback and TTL tracking
|
2017-05-31 16:19:08 -06:00 |
|
Shane Bryldt
|
e9d1ea645f
|
FS-10167: Implemented first draft of blade.publish, still need to circle back to finish blade.route to support multi-tiered routes
|
2017-05-30 10:51:15 -06:00 |
|
Shane Bryldt
|
222780795d
|
FS-10167: Updates to previous overhaul commit to get everything building right under linux
|
2017-05-22 12:02:04 -05:00 |
|
Shane Bryldt
|
9fa52c742e
|
FS-10167: Significant overhaul to libblade and it's operations to match the first layer required by the blade protocol, still more work to be done but nodes can connect to router nodes and get initial identities registered based on realms configured for the master router node.
|
2017-05-22 10:31:50 -06:00 |
|
Shane Bryldt
|
6515bc729c
|
FS-10167: Some fixes to get the windows release build working, and fixed a mistake with asserting on executed statements which would get compiled out for release builds
|
2017-04-21 16:27:39 -06:00 |
|
Shane Bryldt
|
a8a935d64f
|
FS-10167: Temporary commit while trying to figure out why the release build of libsodium under VS won't link properly.
|
2017-04-21 15:43:04 -06:00 |
|
Shane Bryldt
|
5d682abd62
|
FS-10167: Major updates to lifecycle management across a number of objects changing a number of architecture related areas, fixed some little bugs, too much to remember exactly
|
2017-04-20 16:56:08 -06:00 |
|
Shane Bryldt
|
2e02f3b498
|
FS-10167: Adjusted modules to utilize an isolated pool with auto cleanup per module, which also contains the implementation specific module data. Also changed the thread model of the listener for the wss module to utilize the thread pool, alleviating ownership issues during cleanup.
|
2017-04-18 17:02:34 -06:00 |
|
Shane Bryldt
|
21f5635037
|
FS-10167: Small fix, made state volatile in session and connection to prevent odd behaviour by the GCC compiler under linux
|
2017-04-18 15:10:34 -05:00 |
|
Shane Bryldt
|
2c996b592f
|
FS-10167: Switched connection lifecycle to an isolated pool similar to sessions, also refactored the inner WSS transport implementation to be part of the same pool so it is cleaned up with the connection. Switched the connection state machine thread to also utilize thread pool to avoid direct ownership over the thread, similar to session but without the use of a signaled condition due to abstraction of transports which may need to deal with polling for socket events such as with WSS transport. Completely removed the temporary worker thread in the main handle that was for connection/session cleanup.
|
2017-04-18 13:41:00 -06:00 |
|
Shane Bryldt
|
8d4eac7f69
|
FS-10167: fixed a couple deadlock issues and a misconception about the locks on hash
|
2017-04-17 11:10:20 -06:00 |
|
Shane Bryldt
|
5d82a1b2e2
|
FS-10167: Added ks_list_delete_iterator() to delete the node at the current iterator position (only if available if iterator is active). Updated blade_session to reflect ks_list_t being internally thread-safe now.
|
2017-04-14 12:32:13 -06:00 |
|
Shane Bryldt
|
075cd0d179
|
FS-10167: Refactored simclist for ks-ification, and adjusted it for pool-based allocations and cleanup
|
2017-04-14 08:59:58 -06:00 |
|
Shane Bryldt
|
8957953741
|
FS-10167: Temporary commit half way through memory lifecycle changes towards isolated memory pools
|
2017-04-13 15:36:53 -06:00 |
|
Shane Bryldt
|
ea0dc132a3
|
FS-10167: Rewrote the ks_pool allocator, no longer uses paging or internal block allocation, but still retains reference counting and auto cleanup callbacks, should be much more efficient now on windows than the original mmap approach, and all tests now run successfully!
|
2017-04-11 14:43:00 -06:00 |
|
Shane Bryldt
|
dbd2ef2d8b
|
FS-10167: Fixed sessions to cleanup external from their own state processing thread to avoid deadlocking on thread join during cleanup.
|
2017-04-04 12:47:14 -06:00 |
|
Shane Bryldt
|
7742dffae4
|
FS-9952: Initial implementation of a very basic text chat system which introduced a number of supporting subsystems
|
2017-03-22 17:42:50 -04:00 |
|
Shane Bryldt
|
8f569f715b
|
FS-9952: Big commit, first registered jsonrpc echo call successful, lots of cleanup remaining
|
2017-03-22 17:42:50 -04:00 |
|
Shane Bryldt
|
fd49aebb1d
|
FS-9952: Intermediate commit for a fresh point to start retrofitting the jsonrpc code that is incomplete
|
2017-03-22 17:42:50 -04:00 |
|
Shane Bryldt
|
5d7e40c811
|
FS-9952: Some code refactoring and added TTL for sessions, currently harcoded at 5 seconds for testing purposes only and should come from config
|
2017-03-22 17:42:50 -04:00 |
|
Shane Bryldt
|
14a99987bb
|
FS-9952: Preliminary session negotiations done, added a bunch of logging, fixed up cleanup code, needs more testing and more error handling
|
2017-03-22 17:42:50 -04:00 |
|
Shane Bryldt
|
3d8fd5dcaf
|
FS-9952: Added the first half of the session negotations for the server side, untested as it requires the second half coming soon for client side
|
2017-03-22 17:42:50 -04:00 |
|
Shane Bryldt
|
cb7e95fd9a
|
FS-9952: A bunch of cleanup and shifting connections towards ID based passing instead of pointers, will replicate and adjust for session system next
|
2017-03-22 17:42:50 -04:00 |
|