summaryrefslogtreecommitdiff
path: root/src/core
Commit message (Collapse)AuthorAge
* fixes #1488 aio expiration list performance work neededGarrett D'Amore2021-08-09
| | | | | | There were several problems with the array implementation, both from performance and from correctness. This corrects those errors (hopefully) and restores the expiration lists as linked lists.
* * FIX #1486 by waking up latest aio each time. (#1487)JaylinYu2021-08-09
|
* Remove separate protocol initialization step.Garrett D'Amore2021-08-07
| | | | | Nothing is using this, but it adds complexity and also requires additional lock activity each time a socket is opened.
* Minor format and spelling in comments.Garrett D'Amore2021-07-31
|
* Remove extra wrapper for platform clock support.Garrett D'Amore2021-07-22
|
* Fix some unused variables.Garrett D'Amore2021-07-22
|
* fixes #1475 nni_aio_begin should not dispatch task on stopped aioGarrett D'Amore2021-07-22
|
* Fix the wrong ratio when expire queue shrink. (#1470)wangha2021-07-16
|
* Minor clang-tidy fixes.Garrett D'Amore2021-07-11
|
* fixes #1409 reader/writer lock desiredGarrett D'Amore2021-07-11
| | | | | | This provides the initial implementation, and converts the transport lookup routines to use it. This is probably of limited performance benefit, but rwlock's may be useful in further future work.
* More symbol renamingGarrett D'Amore2021-07-11
|
* Remove unused nni_notifyfdGarrett D'Amore2021-07-10
|
* More work on moving SP stuff out of common. Remove unused defs.Garrett D'Amore2021-07-10
|
* Several minor cleanups. Fix socket id stat for listener.v1.5.0Garrett D'Amore2021-07-09
|
* Move transport.[ch] to SPGarrett D'Amore2021-07-09
|
* Test fixes.Garrett D'Amore2021-07-07
|
* Add test cases for nng_msg_reserve, etc. Convert message tests to NUTS.Garrett D'Amore2021-07-07
|
* Fix leaking pipes after close.Garrett D'Amore2021-07-07
|
* Disable clock-dependent checks on macOS in CI/CD.Garrett D'Amore2021-07-06
| | | | | | GitHub's darwin server farm appears possibly overloaded, and the timing specific checks in that environment appear to be busted. Local instances of macOS don't seem to have problems though.
* Fix for UB (NULL pointer plus zero length). (#1459)Garrett D'Amore2021-07-06
|
* Add & document msg_capacity, msg_reserve (#1458)Evan Balster2021-07-06
| | | | | | | * Add & document msg_capacity, msg_reserve * reserve/capacity code style * Documentation references to reserve/capacity
* Turn aio expire queue from nni list to array for efficiency. (#1449)wangha2021-07-06
|
* fixes #1456 bad access in OSX thread on nn (#1457)Garrett D'Amore2021-07-01
| | | | * fixes #1456 bad access in OSX thread on nn * Fix broken aio in darwin cloud.
* minor comment fixesGarrett D'Amore2021-06-02
|
* Extend times for aio_sleep cancel test for benefit of DarwinGarrett D'Amore2021-06-02
|
* Add a couple of test cases for nng_sleep_aio.Garrett D'Amore2021-03-12
|
* fixes #1413 nni_thr_setname NULL pointer dereferenceGarrett D'Amore2021-01-24
|
* Fix comment in protocol.h (#1410)Evgeny Ermakov2021-01-19
|
* fixes #808 Very slow PAIR performance compared to nanomsgGarrett D'Amore2021-01-18
| | | | | | This is only the pair v1 protocol. Pair v0 and polyamorous mode still have work to do. We probably won't "fix" the performance for poly mode since that's deprecated anyway.
* fixes #1401 valgrind reports leaks in all testsGarrett D'Amore2021-01-03
| | | | | | | This arranges for nng_fini to be called via atexit in the test version of the library. It also cleans up some of the actual tests to reduce extraneous (and in some cases incorrect) calls to nng_fini.
* Fix compilation warnings (#1397)Evgeny Ermakov2021-01-02
|
* fixes #1386 remove NNI_PROTO_FLAG_NOMSGQGarrett D'Amore2020-12-27
|
* fixes #1385 nni_thr_wait is unusedGarrett D'Amore2020-12-27
|
* fixes #972 Very slow pull/push performance compared to ZMQGarrett D'Amore2020-12-27
| | | | | | | | | | This refactors the pipeline protocol to use lightweight mq instead of the more expensive message queue structure. It also provides nicer backpressure and buffering support. The test suite was updated and converted to NUTS as well. This won't completely close the gap, but it should help quite a bit.
* fixes #1172 nni_aio_lk is white hotGarrett D'Amore2020-12-20
|
* fixes #1380 nni_aio optimizationsGarrett D'Amore2020-12-20
| | | | fixes #1048 nng_aio reuse error messages are unhelpful
* fixes #1377 nni_aio_fini should not reacquire nni_aio_lkGarrett D'Amore2020-12-20
|
* fixes #1372 nni_reap could be smallerGarrett D'Amore2020-12-19
|
* fixes #1313 support deferred nng_aio destructionGarrett D'Amore2020-12-12
|
* Move TCP out of supplemental.Garrett D'Amore2020-12-05
| | | | This was only used internally, and can live as part of core.
* Convert list to new test framework; detached node fixes.Garrett D'Amore2020-11-24
| | | | | List nodes that are not part of a list should return NULL when asking for the next or previous item.
* fixes #1358 nni_strtou64 and nni_strtox64 could be replaced with strtoullGarrett D'Amore2020-11-23
|
* New NUTS test framework (NNG Unit Test Support).Garrett D'Amore2020-11-23
| | | | | | | | | | | | | This is based on testutil/acutest, but is cleaner and fixes some short-comings. We will be adding more support for additional common paradigms to better facilitate transport tests. While here we added some more test cases, and fixed a possible symbol collision in the the stats framework (due to Linux use of a macro definition of "si_value" in a standard OS header). Test coverage may regress slightly as we are no longer using some of the legacy APIs.
* Work for test refactoring.Garrett D'Amore2020-11-18
| | | | | | | | | | | | | | | | | | | | | | There are a few major areas in this change. * CMake options are now located in a common cmake/NNGOptions.cmake file. This should make it easier for folks to figure out what the options are, and how they are used. * Tests are now scoped with their directory name, which should avoid possible name collisions with test names. * A number of tests have been either moved or incorporated into the newer testutil/acutest framework. We are moving away from my old c-convey framework to something easier to debug. * We use CMake directories a bit more extensively leading to a much cleaner CMake structure. It's not complete, but a big step in the right direction, and a preview of future work. * Tests are now run with verbose flags, so we get more test results in the CI/CD logs.
* fixes #1071 tran_chkopt can be cleaned upGarrett D'Amore2020-11-15
| | | | | | | | | | | | | | | | | This is a sweeping cleanup of the transport logic around options, and also harmonizes the names used when setting or getting options. Additionally, legacy methods are now moved into a separate file and can be elided via CMake or a preprocessor define. Fundamentally, the ability to set to transport options via the socket is deprecated; there are numerous problems with this and my earlier approaches to deal with this have been somewhat misguided. Further these approaches will not work with future protocol work that is planned (were some options need to be negotiated with peers at the time of connection establishment.) Documentation has been updated to reflect this. The test suites still make rather broad use of the older APIs, and will be converted later.
* fixes #1087 CMakeLists structural improvements desiredGarrett D'Amore2020-11-14
| | | | | This doesn't modularize all the tests yet, but it goes a long way in the right direction.
* *Fix Add missing #define when disabling NNG_ENABLE_STATS (#1342)JaylinYu2020-11-13
| | | Co-authored-by: Jaylin <oblivionangel@sina.com>
* fixes #1323 stats framework is *way* to heavyGarrett D'Amore2020-11-11
| | | | | | This should reduce the amount of copying, and the overall size used by pipes and other objects quite a bit. (On my system, the sizeof nni_pipe shrank by 400 bytes, for example.)
* Remove left over function prototypes.Garrett D'Amore2020-11-10
|
* fixes #1337 nni aio user data could be removedGarrett D'Amore2020-11-10
|