qpid-proton.git
2 years agoPROTON-2201: update versions for 0.32.0-rc1 0.32.0 0.32.0-rc1
Robbie Gemmell [Thu, 20 Aug 2020 08:11:27 +0000 (09:11 +0100)] 
PROTON-2201: update versions for 0.32.0-rc1

2 years agoPROTON-2268: Fix Threadercizer warning which fails to build on FreeBSD
Andrew Stitcher [Thu, 20 Aug 2020 02:29:35 +0000 (22:29 -0400)] 
PROTON-2268: Fix Threadercizer warning which fails to build on FreeBSD

2 years agoPROTON-2265: Ensure that clang builds work:
Andrew Stitcher [Tue, 18 Aug 2020 20:24:05 +0000 (16:24 -0400)] 
PROTON-2265: Ensure that clang builds work:
- Align proton CI build with dispatch CI build
- Install llvm linking bits for focal to make clang work with lto

2 years agoPROTON-2265: Fix cmake builds with old cmake version (2.8.12)
Andrew Stitcher [Tue, 18 Aug 2020 14:31:23 +0000 (10:31 -0400)] 
PROTON-2265: Fix cmake builds with old cmake version (2.8.12)
- Fixed some compile warnings that error out on gcc 4.4
- Fixed some incorrect printf formatting codes causing Visual Studio warnings

2 years agoMerge branch 'array-of-lists-first-list-empty'
Kim van der Riet [Tue, 18 Aug 2020 12:58:41 +0000 (08:58 -0400)] 
Merge branch 'array-of-lists-first-list-empty'
PR#263
PROTON-2244: Fix for Array of lists with first list empty encoding

2 years agoPROTON-2244: Fix for Array of lists with first list empty encoding array-of-lists-first-list-empty 263/head
Kim van der Riet [Wed, 1 Jul 2020 16:15:04 +0000 (12:15 -0400)] 
PROTON-2244: Fix for Array of lists with first list empty encoding

PROTON-2244: Correction on previous fix, prevent zero-length array encoding for all array memebers of an array

PROTON-2244: Minor correction to comment text

PROTON-2244: Added a set of array encode-decode tests for Data.Array, including a array of lists test which catches this bug.

PROTON-2244: Removed array codec tests from Python to C/C++ tests as requested

PROTON-2244: Removed debug statements erroneously left in code from previous commit

PROTON-2244: Fix for non-linux compilers and non-portable float types

PROTON-2244: Further improvements to array check: fail if error during encoding or decoding

PROTON-2244: Added tests for arrays of char and decimal32/64/128.

PROTON-2244: Added some additional arrays of list test cases

PROTON-2244: Removed array tests of all but array of lists, as this is the issue. The consensus is that we need to make the tests compare encoded bytes with expected encoded bytes, not perform an encode/decode comparison as these tests do at present. This should be done at a later time.

NO_JIRA: Removed header files which are no longer used in c/tests/data_test.cpp

2 years agoPROTON-2201: bump .so versions following review
Robbie Gemmell [Thu, 13 Aug 2020 15:54:11 +0000 (16:54 +0100)] 
PROTON-2201: bump .so versions following review

2 years agoPROTON-2247: Work on raw echo to improve output and add some wakes 265/head
Andrew Stitcher [Wed, 10 Jun 2020 03:22:26 +0000 (23:22 -0400)] 
PROTON-2247: Work on raw echo to improve output and add some wakes

2 years agoPROTON-2247: Epoll implementation of raw connection API
Andrew Stitcher [Fri, 19 Jun 2020 18:00:16 +0000 (14:00 -0400)] 
PROTON-2247: Epoll implementation of raw connection API

2 years agoPROTON-2247: Tests for common raw connection code
Andrew Stitcher [Thu, 12 Mar 2020 18:30:27 +0000 (14:30 -0400)] 
PROTON-2247: Tests for common raw connection code

2 years agoPROTON-2247: Common raw connection implementation:
Andrew Stitcher [Mon, 22 Jun 2020 17:36:10 +0000 (13:36 -0400)] 
PROTON-2247: Common raw connection implementation:
- Buffer management
- Read/Write logic
- Stubbed out implementation specific code

2 years agoPROTON-2247: Raw connections API for the proactor
Andrew Stitcher [Thu, 23 Jan 2020 20:46:15 +0000 (15:46 -0500)] 
PROTON-2247: Raw connections API for the proactor
- API defined in header files
- Simple test applicationis derived from the direct.c example

2 years agoPROTON-2226: remove assertion check that generates false positive
Cliff Jansen [Tue, 11 Aug 2020 15:37:36 +0000 (08:37 -0700)] 
PROTON-2226: remove assertion check that generates false positive

2 years agoPROTON-2258: mark pn_work_head(), pn_work_next(), and Python equivalents as deprecated.
Cliff Jansen [Fri, 7 Aug 2020 00:03:03 +0000 (17:03 -0700)] 
PROTON-2258: mark pn_work_head(), pn_work_next(), and Python equivalents as deprecated.

2 years agoPROTON-335: Add access to link attach properties (C and Python)
Kenneth Giusti [Mon, 8 Jun 2020 02:10:11 +0000 (22:10 -0400)] 
PROTON-335: Add access to link attach properties (C and Python)
  pn_link_properties()
  pn_link_remote_properties()

This closes #260.

2 years agoPROTON-2253: rename workflow, remove restrictions on branches
Robbie Gemmell [Mon, 27 Jul 2020 12:25:33 +0000 (13:25 +0100)] 
PROTON-2253: rename workflow, remove restrictions on branches

2 years agoNO-JIRA: Attempt to fix swig and jsoncpp for azure windows build
Andrew Stitcher [Thu, 23 Jul 2020 21:02:01 +0000 (17:02 -0400)] 
NO-JIRA: Attempt to fix swig and jsoncpp for azure windows build
- Change python version to one that works for builds on all OSes
- Turns out that the choco swig 4.0.2 is broken

2 years agoPROTON-2253: Introduce simple github actions CI
Andrew Stitcher [Fri, 24 Jul 2020 03:32:30 +0000 (23:32 -0400)] 
PROTON-2253: Introduce simple github actions CI

This is a simple CI job triggered by pushes to master and pull requests against
master it builds and tests on Ubuntu/Windows/macOS. It also produces some output
artifacts which have the install area and the generated python packages.

- Using python 3.6 as this is the version that works on all platforms tested
- Have to fix windows chocolately swig to 4.0.1 as 4.0.2 choco package is broken
- Disable ruby build on macOS due to some version mismatch issue

2 years agoPROTON-2208: Fix static library build
Andrew Stitcher [Tue, 21 Jul 2020 18:37:33 +0000 (14:37 -0400)] 
PROTON-2208: Fix static library build
- Also fix long standing fuzz test failure with static build
- Also allow link time optimization for Clang and MSVC

2 years agoPROTON-2208: Final (hopefully) fixes to get RHEL6/7 to compile
Andrew Stitcher [Fri, 17 Jul 2020 21:35:00 +0000 (17:35 -0400)] 
PROTON-2208: Final (hopefully) fixes to get RHEL6/7 to compile

2 years agoPROTON-2208: Fix threaderciser colateral damage
Andrew Stitcher [Fri, 17 Jul 2020 18:28:40 +0000 (14:28 -0400)] 
PROTON-2208: Fix threaderciser colateral damage

2 years agoPROTON-2208: Stupid typo
Andrew Stitcher [Fri, 17 Jul 2020 17:08:01 +0000 (13:08 -0400)] 
PROTON-2208: Stupid typo

2 years agoPROTON-2208: More simplification/fixing to build files
Andrew Stitcher [Fri, 17 Jul 2020 15:26:32 +0000 (11:26 -0400)] 
PROTON-2208: More simplification/fixing to build files
- Cmake versions pre version 3 should work now

2 years agoPROTON-2208/PROTON-2080: More C99 changes
Andrew Stitcher [Thu, 16 Jul 2020 00:29:28 +0000 (20:29 -0400)] 
PROTON-2208/PROTON-2080: More C99 changes
- Some changes now that all supported compilers support enough C++11

2 years agoPROTON-2207/PROTON-2080: More changes that rely on a C99 minimum compiler version.
Andrew Stitcher [Tue, 14 Jul 2020 21:24:00 +0000 (17:24 -0400)] 
PROTON-2207/PROTON-2080: More changes that rely on a C99 minimum compiler version.
- This should fix the issue with -Wformat-security as we no longer ever specify -Wno-format
  for C (but still need to for C++ as we still support pre C++11)

2 years agoPROTON-2246: Fix merge casualty of pn_netaddr restructure HEAD
Andrew Stitcher [Mon, 13 Jul 2020 17:29:47 +0000 (13:29 -0400)] 
PROTON-2246: Fix merge casualty of pn_netaddr restructure

2 years agoPROTON-2222 Fix undefined variable `x` in scripts/env.py (#268)
Jiri Daněk [Sun, 12 Jul 2020 12:14:16 +0000 (14:14 +0200)] 
PROTON-2222 Fix undefined variable `x` in scripts/env.py (#268)

2 years agoPROTON-2252 Fix Coverity warning of buffer overrun in pn_proactor_addr (#267)
Jiri Daněk [Sat, 11 Jul 2020 11:40:05 +0000 (13:40 +0200)] 
PROTON-2252 Fix Coverity warning of buffer overrun in pn_proactor_addr (#267)

2 years agoPROTON-2125: suppress annoying deprecation warning from Minitest (#266)
Jiri Daněk [Sat, 11 Jul 2020 11:07:07 +0000 (13:07 +0200)] 
PROTON-2125: suppress annoying deprecation warning from Minitest (#266)

2 years agoPROTON-2219 Upgrade .travis.yml to test on a good cross-section of Ubuntu versions...
Jiri Daněk [Sat, 11 Jul 2020 10:29:42 +0000 (12:29 +0200)] 
PROTON-2219 Upgrade .travis.yml to test on a good cross-section of Ubuntu versions (#246)

2 years agoPROTON-2207/PROTON-2208: Remove vestiges of compiling with pre C99 compilers
Andrew Stitcher [Fri, 10 Jul 2020 21:32:39 +0000 (17:32 -0400)] 
PROTON-2207/PROTON-2208: Remove vestiges of compiling with pre C99 compilers
- Including a long unused internal replacement for atoll

2 years agoPROTON-2208: Remove ability to compile proton-c as C++
Andrew Stitcher [Fri, 10 Jul 2020 21:10:57 +0000 (17:10 -0400)] 
PROTON-2208: Remove ability to compile proton-c as C++
- No longer needed with windows minimum VS2015 as it supports sufficient C99
  to compile proton-c as C.

2 years agoPROTON-2077 Remove pni_snprintf; not needed with Visual Studio 2015 and up
Jiri Danek [Tue, 5 May 2020 16:14:11 +0000 (18:14 +0200)] 
PROTON-2077 Remove pni_snprintf; not needed with Visual Studio 2015 and up

This fixes overflow issue found earlier by Coverity in pni_snprintf.

2 years agoPROTON-2246: Restructure pn_netaddr implementation internals
Andrew Stitcher [Wed, 8 Apr 2020 22:47:12 +0000 (18:47 -0400)] 
PROTON-2246: Restructure pn_netaddr implementation internals
- This allows pn_netaddr internal APIs to be used in multiple
  files.

2 years agoPROTON-2250: Rearrange epoll locks to avoid locking in one place and unlocking in...
Andrew Stitcher [Wed, 6 May 2020 18:37:13 +0000 (14:37 -0400)] 
PROTON-2250: Rearrange epoll locks to avoid locking in one place and unlocking in another

2 years agoPROTON-2077: Update Azure pipeline build to build VS2019 as well
Andrew Stitcher [Fri, 10 Jul 2020 02:56:08 +0000 (22:56 -0400)] 
PROTON-2077: Update Azure pipeline build to build VS2019 as well

2 years agoPROTON-2077: Test with VS 2015, 17 and 19 in .appveyor.yml
Jiri Danek [Fri, 10 Jul 2020 02:24:25 +0000 (22:24 -0400)] 
PROTON-2077: Test with VS 2015, 17 and 19 in .appveyor.yml

This borrows from changes originally proposed in GitHub PR #200.

This closes #249

2 years agoPROTON-2077: Get Windows code to build as C99 not C++
Andrew Stitcher [Fri, 8 May 2020 22:57:42 +0000 (18:57 -0400)] 
PROTON-2077: Get Windows code to build as C99 not C++

2 years agoPROTON-2077: The win_iocp code is really C++
Andrew Stitcher [Fri, 1 May 2020 20:32:51 +0000 (16:32 -0400)] 
PROTON-2077: The win_iocp code is really C++
- This allows the windows code to compile as C99 with the VS compilers that support that

2 years agoPROTON-2077: Update documentation for changed Windows minimum requirements
Andrew Stitcher [Mon, 6 Jul 2020 17:37:48 +0000 (13:37 -0400)] 
PROTON-2077: Update documentation for changed Windows minimum requirements

2 years agoPROTON-2235 set threaderciser test timeout and modernize compilation (#262)
Jiri Daněk [Thu, 9 Jul 2020 15:26:16 +0000 (17:26 +0200)] 
PROTON-2235 set threaderciser test timeout and modernize compilation (#262)

2 years agoNO-JIRA: Small proton-c documentation fixes
Andrew Stitcher [Thu, 9 Jul 2020 00:53:39 +0000 (20:53 -0400)] 
NO-JIRA: Small proton-c documentation fixes

2 years agoNO-JIRA: Some small fixes to proton-c documentation
Andrew Stitcher [Thu, 9 Jul 2020 00:23:48 +0000 (20:23 -0400)] 
NO-JIRA: Some small fixes to proton-c documentation

2 years agoPROTON-2220 fix cleanup in test_broker @contextmanager (#264)
Jiri Daněk [Thu, 2 Jul 2020 12:05:29 +0000 (14:05 +0200)] 
PROTON-2220 fix cleanup in test_broker @contextmanager (#264)

Python context managers propagate thrown exceptions out of their `yield` statement.
If the test broker is to be always stopped, a finally block is necessary.

2 years agoPROTON-2240: epoll proactor - fix cases where a fired timer is not rearmed as expected
Cliff Jansen [Thu, 18 Jun 2020 05:53:07 +0000 (22:53 -0700)] 
PROTON-2240: epoll proactor - fix cases where a fired timer is not rearmed as expected

2 years agoPROTON-2220: smarter accounting for file descriptors in tests (#259)
Jiri Daněk [Tue, 9 Jun 2020 13:23:39 +0000 (15:23 +0200)] 
PROTON-2220: smarter accounting for file descriptors in tests (#259)

2 years agoPROTON-2225: adjust valgrind.supp for yet another form of threaderciser leak (#258)
Jiri Daněk [Sat, 6 Jun 2020 15:59:41 +0000 (17:59 +0200)] 
PROTON-2225: adjust valgrind.supp for yet another form of threaderciser leak (#258)

2 years agoPROTON-1800: issue not completely fixed, ignore the failing test (#253)
Jiri Daněk [Tue, 2 Jun 2020 14:15:35 +0000 (16:15 +0200)] 
PROTON-1800: issue not completely fixed, ignore the failing test (#253)

2 years agoPROTON-2225: adjust valgrind.supp to cover both forms of the leak (#252)
Jiri Daněk [Thu, 28 May 2020 17:47:16 +0000 (19:47 +0200)] 
PROTON-2225: adjust valgrind.supp to cover both forms of the leak (#252)

2 years agoPROTON-2220 [python] fix new tests that proved to be flaky (#251)
Jiri Daněk [Tue, 26 May 2020 21:54:46 +0000 (23:54 +0200)] 
PROTON-2220 [python] fix new tests that proved to be flaky (#251)

2 years agoPROTON-2225: compile c-threaderciser with COMPILE_LANGUAGE_FLAGS (#250)
Jiri Daněk [Tue, 26 May 2020 20:11:52 +0000 (22:11 +0200)] 
PROTON-2225: compile c-threaderciser with COMPILE_LANGUAGE_FLAGS (#250)

2 years agoPROTON-2228: pn_listener_close doesn't correctly close the listener fds
Andrew Stitcher [Fri, 22 May 2020 07:10:54 +0000 (03:10 -0400)] 
PROTON-2228: pn_listener_close doesn't correctly close the listener fds

2 years agoPROTON-2220 [python] add tests for leak issues, mostly in BlockingConnection
Jiri Danek [Fri, 21 Feb 2020 10:29:03 +0000 (11:29 +0100)] 
PROTON-2220 [python] add tests for leak issues, mostly in BlockingConnection

2 years agoPROTON-2181 in tests/py/test_unittest.py, try unittest, then unittest2, otherwise...
Jiri Danek [Fri, 21 Feb 2020 10:17:45 +0000 (11:17 +0100)] 
PROTON-2181 in tests/py/test_unittest.py, try unittest, then unittest2, otherwise monkeypatch

2 years agoPROTON-2221 Add coverage reporting for the Ruby binding (#130)
Jirka Daněk [Fri, 22 May 2020 20:55:13 +0000 (22:55 +0200)] 
PROTON-2221 Add coverage reporting for the Ruby binding (#130)

Co-authored-by: Jiri Danek <jdanek@redhat.com>
2 years agoPROTON-2225: enable threaderciser by default, suppress race checkers (#247)
Jiri Daněk [Fri, 22 May 2020 18:26:41 +0000 (20:26 +0200)] 
PROTON-2225: enable threaderciser by default, suppress race checkers (#247)

* NO-JIRA: specify explicitly the compiler used on macOS

On Travis on macOS, gcc is aliased to clang. This way, we won't
have a misleading line in Travis report about the compiler.

* PROTON-2225: enable threaderciser by default, suppress race checkers

2 years agoPROTON-2215: Windows build fails if CMAKE_MODULE_PATH is not empty (#141)
Matthieu [Mon, 18 May 2020 14:54:49 +0000 (15:54 +0100)] 
PROTON-2215: Windows build fails if CMAKE_MODULE_PATH is not empty (#141)

The previously used CMAKE_MODULE_PATH is actually a list of directories,
and therefore should not be used here.

Co-authored-by: Matthieu Longo <matthieu.longo@murex.com>
Co-authored-by: Jiri Danek <jdanek@redhat.com>
2 years agoPROTON-220: Google Benchmark proton-c and proton-cpp microbenchmarks (#211)
Jirka Daněk [Tue, 12 May 2020 11:52:43 +0000 (13:52 +0200)] 
PROTON-220: Google Benchmark proton-c and proton-cpp microbenchmarks (#211)

2 years agoPROTON-2199 fix memory leak in C++ object inspect (#244)
Jiri Daněk [Tue, 12 May 2020 09:20:20 +0000 (11:20 +0200)] 
PROTON-2199 fix memory leak in C++ object inspect (#244)

2 years agoPROTON-2201, PROTON-2154: update versions for 0.32.0-SNAPSHOT
Robbie Gemmell [Thu, 7 May 2020 15:02:36 +0000 (16:02 +0100)] 
PROTON-2201, PROTON-2154: update versions for 0.32.0-SNAPSHOT

2 years agoPROTON-2154: update version for 0.31.0-rc3 0.31.0 0.31.0-rc3
Robbie Gemmell [Thu, 7 May 2020 14:57:23 +0000 (15:57 +0100)] 
PROTON-2154: update version for 0.31.0-rc3

2 years agoPROTON-2211: fix fd leak on connections in new epoll proactor implementation
Cliff Jansen [Thu, 7 May 2020 14:33:16 +0000 (07:33 -0700)] 
PROTON-2211: fix fd leak on connections in new epoll proactor implementation

2 years agoPROTON-2201, PROTON-2154: update versions for 0.32.0-SNAPSHOT
Robbie Gemmell [Fri, 1 May 2020 14:57:18 +0000 (15:57 +0100)] 
PROTON-2201, PROTON-2154: update versions for 0.32.0-SNAPSHOT

2 years agoPROTON-2154: update versions for 0.31.0-rc2 0.31.0-rc2
Robbie Gemmell [Fri, 1 May 2020 14:51:22 +0000 (15:51 +0100)] 
PROTON-2154: update versions for 0.31.0-rc2

2 years agoPROTON-2203: fix duplicate listener socket rearming and rationalize rearming locking
Cliff Jansen [Fri, 1 May 2020 05:47:17 +0000 (22:47 -0700)] 
PROTON-2203: fix duplicate listener socket rearming and rationalize rearming locking

2 years agoPROTON-2201, PROTON-2154: drop version back to 0.31.0-SNAPSHOT
Robbie Gemmell [Tue, 28 Apr 2020 15:16:47 +0000 (16:16 +0100)] 
PROTON-2201, PROTON-2154: drop version back to 0.31.0-SNAPSHOT

This reverts commits c2384ecdc7b7490fa2ed95fc121d8188122661e3 and b6532632d6b0877136621daeba55b2e105d810d2.

2 years agoPROTON-2201, PROTON-2154: update versions for 0.32.0-SNAPSHOT
Robbie Gemmell [Tue, 28 Apr 2020 10:44:11 +0000 (11:44 +0100)] 
PROTON-2201, PROTON-2154: update versions for 0.32.0-SNAPSHOT

2 years agoPROTON-2154: update versions for 0.31.0-rc1 0.31.0-rc1
Robbie Gemmell [Tue, 28 Apr 2020 10:42:10 +0000 (11:42 +0100)] 
PROTON-2154: update versions for 0.31.0-rc1

2 years agoPROTON-2154: fixup
Robbie Gemmell [Tue, 28 Apr 2020 10:39:31 +0000 (11:39 +0100)] 
PROTON-2154: fixup

2 years agoPROTON-2154: bump so versions based on review with Andrew
Robbie Gemmell [Tue, 28 Apr 2020 10:15:40 +0000 (11:15 +0100)] 
PROTON-2154: bump so versions based on review with Andrew

2 years agoPROTON-2200 fix go message unmarshal memory leak (#231)
d98762625 [Mon, 27 Apr 2020 09:30:13 +0000 (10:30 +0100)] 
PROTON-2200 fix go message unmarshal memory leak (#231)

2 years agoPROTON 2134 Run sanitizers on bionic, forgot to wrap some ruby examples, disable...
Jiri Danek [Thu, 7 Nov 2019 22:28:12 +0000 (23:28 +0100)] 
PROTON 2134 Run sanitizers on bionic, forgot to wrap some ruby examples, disable failing

2 years agoPROTON-2134 Workaround for dynamic linking of libasan in travis
Jiri Danek [Thu, 7 Nov 2019 19:44:53 +0000 (20:44 +0100)] 
PROTON-2134 Workaround for dynamic linking of libasan in travis

2 years agoPROTON-2134 Enable asan in Travis CI with proton-python binding
Jiri Danek [Thu, 7 Nov 2019 15:48:15 +0000 (16:48 +0100)] 
PROTON-2134 Enable asan in Travis CI with proton-python binding

The lsan suppressions for python binary is needed due to warnings like

    27: Direct leak of 4832 byte(s) in 137 object(s) allocated from:
    27:     #0 0x7f53059be961 in realloc (/usr/lib/x86_64-linux-gnu/libasan.so.2+0x98961)
    27:     #1 0x49522b  (/usr/bin/python2.7+0x49522b)

2 years agoPROTON-2133 Add and populate tsan suppressions and add tsan job in travis
Jiri Danek [Thu, 7 Nov 2019 12:50:54 +0000 (13:50 +0100)] 
PROTON-2133 Add and populate tsan suppressions and add tsan job in travis

* lowercase the test_env CMake variable where it was previously uppercase
* add the ${PN_ENV_SCRIPT} to every test command that uses ${test_env}

Otherwise I'd get

    Could not find executable TSAN_OPTIONS=second_deadlock_stack=1 suppressions=/home/jdanek/repos/qpid/qpid-proton/tests/tsan.supp
    Looked in the following places:
    TSAN_OPTIONS=second_deadlock_stack=1 suppressions=/home/jdanek/repos/qpid/qpid-proton/tests/tsan.supp
    ...

2 years agoPROTON-1675 [cpp] Attempt to listen on invalid URL will not throw exception (#238)
Jiri Daněk [Sat, 25 Apr 2020 17:32:09 +0000 (17:32 +0000)] 
PROTON-1675 [cpp] Attempt to listen on invalid URL will not throw exception (#238)

2 years agoNO-JIRA: bring developer documentation up to date (#241)
Jiri Daněk [Sat, 25 Apr 2020 16:27:50 +0000 (16:27 +0000)] 
NO-JIRA: bring developer documentation up to date (#241)

2 years agoNO-JIRA: Convenience fixes to gitignore
Andrew Stitcher [Fri, 24 Apr 2020 20:42:50 +0000 (16:42 -0400)] 
NO-JIRA: Convenience fixes to gitignore

2 years agoPROTON-2195: Introduce stub pn_event_batch_connection_driver for backward ABI compat
Andrew Stitcher [Fri, 24 Apr 2020 17:59:32 +0000 (13:59 -0400)] 
PROTON-2195: Introduce stub pn_event_batch_connection_driver for backward ABI compat

2 years agoPROTON-2172: temporarily disable test pending proper epoll timers fix
Cliff Jansen [Thu, 23 Apr 2020 18:48:14 +0000 (11:48 -0700)] 
PROTON-2172: temporarily disable test pending proper epoll timers fix

2 years agoPROTON-2130: Really fix include files
Andrew Stitcher [Thu, 23 Apr 2020 14:47:49 +0000 (10:47 -0400)] 
PROTON-2130: Really fix include files

2 years agoPROTON-2130: Rework epoll process logic to switch on type of context
Andrew Stitcher [Thu, 23 Apr 2020 02:27:21 +0000 (22:27 -0400)] 
PROTON-2130: Rework epoll process logic to switch on type of context

2 years agoPROTON-2130: swap include file ordering for PROTON-2195/2196, trim trailing whitespace
Cliff Jansen [Thu, 23 Apr 2020 05:21:21 +0000 (22:21 -0700)] 
PROTON-2130: swap include file ordering for PROTON-2195/2196, trim trailing whitespace

2 years agoPROTON-2130: more epoll reworking:
Andrew Stitcher [Fri, 27 Mar 2020 22:31:32 +0000 (18:31 -0400)] 
PROTON-2130: more epoll reworking:
- Rework queued accepts so that we do multiple at once
- This should allow app to accept new connections a little
  more efficiently.
- We limit the number of accepted connections to the specified backlog
- If the app doesn't accept all the connections in a single batch
  we don't rearm the listener until they do, as a form of accept flow control.

2 years agoPROTON-2130: Substantially reduce memory use for proactor connections
Andrew Stitcher [Tue, 7 Apr 2020 18:12:42 +0000 (14:12 -0400)] 
PROTON-2130: Substantially reduce memory use for proactor connections

2 years agoPROTON-2130: epoll reworking:
Andrew Stitcher [Fri, 20 Mar 2020 03:35:36 +0000 (23:35 -0400)] 
PROTON-2130: epoll reworking:
- Only keep fd in epoll_extended_t remove from ptimer_t, psocket_t
- Remove backpointers and consistently use structure embedding to go from:
  psocket->pconnection;
  psocket->pn_listener;
  psocket->acceptor;
  pcontext->pconnection;
  pcontext->pn_listener;
  pn_event_batch->pn_proactor;
  pn_batch_event->pn_listener;
  pn_batch_event->pconnection;
- Move address string from being stored in psocket to being stored in pconnection and
  pn_listener - saves strings for multiple listening sockets
- Rationalise post_event by switching on event types instead of the previous ad hoc
  event type detection.

2 years agoPROTON-2130: Split out structs from epoll.c to make it easier to mess with them
Andrew Stitcher [Mon, 16 Mar 2020 17:09:05 +0000 (13:09 -0400)] 
PROTON-2130: Split out structs from epoll.c to make it easier to mess with them

2 years agoPROTON-2130: epoll proactor race/deadlock fixes
Cliff Jansen [Wed, 11 Dec 2019 18:19:08 +0000 (10:19 -0800)] 
PROTON-2130: epoll proactor race/deadlock fixes

2 years agoPROTON-2130: epoll proactor io bytes accounting fix for shutdown and error
Cliff Jansen [Mon, 2 Dec 2019 17:42:59 +0000 (09:42 -0800)] 
PROTON-2130: epoll proactor io bytes accounting fix for shutdown and error

2 years agoPROTON-2130: epoll proactor: fix unwritten output bytes, pick up PROTON-2030 and...
Cliff Jansen [Mon, 2 Dec 2019 17:27:22 +0000 (09:27 -0800)] 
PROTON-2130: epoll proactor: fix unwritten output bytes, pick up PROTON-2030 and PROTON-2131

2 years agoPROTON-2130: epoll proactor changed to use serialized calls to epoll_wait for multipl...
Cliff Jansen [Thu, 7 Nov 2019 08:55:50 +0000 (00:55 -0800)] 
PROTON-2130: epoll proactor changed to use serialized calls to epoll_wait for multiple events

2 years agoPROTON-2196: Small proactor tidy ups
Andrew Stitcher [Thu, 23 Apr 2020 02:25:29 +0000 (22:25 -0400)] 
PROTON-2196: Small proactor tidy ups

2 years agoPROTON-2196: Small proactor tidy ups
Andrew Stitcher [Thu, 23 Apr 2020 02:25:29 +0000 (22:25 -0400)] 
PROTON-2196: Small proactor tidy ups

2 years agoPROTON-2195: Finalise the proactor API around pn_event_batch_t
Andrew Stitcher [Wed, 22 Apr 2020 17:34:51 +0000 (13:34 -0400)] 
PROTON-2195: Finalise the proactor API around pn_event_batch_t
- Move pn_event_batch_t entirely into libqpid-proton-proactor
- Make the pn_event_batch_t implementation private
- Removed pn_event_batch_connection_driver() API as it is not used at all
  and can't be used for anything.

2 years agoPassing pointer value instead of address to LocalFree.
Attila Kun [Wed, 15 Apr 2020 19:30:38 +0000 (20:30 +0100)] 
Passing pointer value instead of address to LocalFree.

2 years agoPROTON-2190 Fix url_test.go on macOS (#239)
Jiri Daněk [Thu, 16 Apr 2020 19:44:09 +0000 (21:44 +0200)] 
PROTON-2190 Fix url_test.go on macOS (#239)

2 years agoPROTON-2187: Python client: connection cleanup on close while still connecting.
Cliff Jansen [Mon, 30 Mar 2020 06:47:50 +0000 (23:47 -0700)] 
PROTON-2187: Python client: connection cleanup on close while still connecting.

2 years agoPROTON-2160: Correct go module build
Andrew Stitcher [Wed, 4 Mar 2020 04:58:08 +0000 (23:58 -0500)] 
PROTON-2160: Correct go module build

2 years agoNO-JIRA: Update Azure Pipeline build image versions
Andrew Stitcher [Wed, 4 Mar 2020 04:32:09 +0000 (23:32 -0500)] 
NO-JIRA: Update Azure Pipeline build image versions

2 years agoMerge pull request #230 from kgiusti/PROTON-2184
Ken Giusti [Mon, 2 Mar 2020 14:39:38 +0000 (09:39 -0500)] 
Merge pull request #230 from kgiusti/PROTON-2184

PROTON-2184: fix assert in pn_session_set_context