Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resync with upstream 1.7.0-pre #214

Merged
merged 26 commits into from
Dec 28, 2023
Merged

Resync with upstream 1.7.0-pre #214

merged 26 commits into from
Dec 28, 2023

Conversation

JaylinYu
Copy link
Member

No description provided.

alawn-wang and others added 26 commits December 28, 2023 22:20
In some places, we use ifdef, and others if.

This normalizes for always using ifdef, so we can compile when
this macro is not defined.
In some places, we use ifdef, and others if.

This normalizes for always using ifdef, so we can compile when
this macro is not defined.
In some places, we use ifdef, and others if.

This normalizes for always using ifdef, so we can compile when
this macro is not defined.
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.15.0 to 0.17.0.
- [Commits](golang/net@v0.15.0...v0.17.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Credit goes to Wu Xuan (@willwu1217) for diagnosing and proposing
a fix as part of #1695.  This approach takes a revised approach
to avoid adding extra memory, and it also is slightly faster as we
do not need to update both pointers in the linked list, by reusing
the reap node.

As part of this a new internal API, nni_aio_completions, is introduced.
In all likelihood we will be able to use this to solve some similar
crashes in other areas of the code.
One must not attempt to use any functions that access the socket
directly from pipe notification callbacks.
The aio for connections was meant to have an infinite sleep (no
timeout), but was getting an initial value of zero, so we were spinning
on accept.
This eliminates the req protocols use of nni_timer (and setting
a single timer node per request.  This was problematic because it
devolves into O(n^2) as we wind up inserting timer nodes and having
to scan the list for the timer node.

The solution is to use a single scan - stop worrying about insertion,
but instead use a coarse granularity timer (defaults to 1 second)
for retries.  Then do the O(n) scan just once per interval.

A new option, NNG_OPT_REQ_RESENDTICK, can be used to change the tick
interval for cases (like unit tests) where more fine grained timing
is required.
(This should avoid folks thinking master represents 1.6.0.)
The next release needs to bump the minor because of the new
option NNG_OPT_REQ_RESENDTICK.
…hutdown

fixes #1733 deadlock in websocket listener close
It's not absolutely clear that this fixes all of the possible
cases, but we're hopeful that this does -- and in any event the
bug does not seem to reproduce easily anymore.
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.14.0 to 0.17.0.
- [Commits](golang/crypto@v0.14.0...v0.17.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
@JaylinYu JaylinYu merged commit 13c3e14 into main Dec 28, 2023
6 of 14 checks passed
@JaylinYu JaylinYu deleted the jaylin/sdk branch December 28, 2023 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants