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

Automation: main-next integrate #16616

Merged
merged 5 commits into from
Jul 31, 2023
Merged

Automation: main-next integrate #16616

merged 5 commits into from
Jul 31, 2023

Conversation

msfluid-bot
Copy link
Collaborator

main-next integrate PR

The aim of this pull request is to sync main and next branch. If this PR is assigned to you, you need to do the following:

  1. Acknowledge the pull request by adding a comment -- "Actively working on it".
  2. If there are no CI failures, add the "msftbot: merge-next" label to the PR and one of the people with merge permissions will merge it in.
  3. If there are CI failures, check out the main-next-3df223e branch and make code changes to fix the failures.
  • You can ignore any failures in the Real service e2e test and Stress test pipelines. These pipelines are not required to pass to merge changes.
  1. Do NOT rebase or squash the main-next-3df223e branch: its history must be preserved. Always amend the HEAD commit using the following git commands:
  • git commit --amend -m "Automation: main-next integrate"
  • git push --force-with-lease

CraigMacomber and others added 5 commits July 27, 2023 11:05
## Description

Build-tools (the release group) should use the version of build-tools
(the package) that it contains, not a published one.

Also it does not require test-tools since it just uses mocha and not
jest.
This PR introduces the redis implementation of filesystem APIs, to be
used by isomorphic-git within GitRest. The implementation was based on
Node.js's FileSystem promise APIs
(https://nodejs.org/api/fs.html#promises-api ) and also isomorphic-git's
use of the filesystem APIs
(https://github.com/isomorphic-git/isomorphic-git/blob/main/src/models/FileSystem.js
).

## Reviewer Guidance

This PR is heavily based on the AzureBlob FS implementation in azure
fluid relay. The common functions that can be used by redisFS and
AzureBlobFS have also been moved into OSS in this PR.

Currently, we can use Redis FS with isomorphic git using a config. In
the future PR, this will be controlled by a flag sent by the driver at
the time of document creation.
… was reachable or not) (#16328)

## Description

Item: https://dev.azure.com/fluidframework/internal/_workitems/edit/4745
8s of MaxReconnectDelayInMs seems less. Increase it to 30s. This was
done due to a problem we faced recently where "retry-after" was not
present in the Throttling error due to some error at server side and
client was retrying very aggressively as 8s sec wait was too less. So
increase it to 30s in case the service or socket is reachable or not.

The general philosophy behind this PR is the following:
1. If we can't reach service (including being offline), we do not have
any data on when this situation would change, so we want to keep
retrying relatively frequently, to reduce delay from service becoming
reachable to a point client becomes connected and up to date. So,
continue to use back-off strategy with max 8 sec between retries.
2. If we reached service and it returned some retryable error, but there
is no retryAfter property communicated to us, then we will back-off
exponentially with max delay of 30 seconds between retries. This gives
more time for service to recover, and avoids whole application being
throttled due to too many calls performed by all clients.

8 & 30 seconds could be changed in the future, but we want to keep two
different policies for those two distinct cases.

---------

Co-authored-by: Jatin Garg <jatingarg@Jatins-MacBook-Pro-2.local>
fixing a formatting issue from the previous PR
@msfluid-bot
Copy link
Collaborator Author

@fluid-example/bundle-size-tests: +200 Bytes
Metric NameBaseline SizeCompare SizeSize Diff
aqueduct.js 435.4 KB 435.4 KB No change
connectionState.js 680 Bytes 680 Bytes No change
containerRuntime.js 235.42 KB 235.42 KB No change
loader.js 145.75 KB 145.85 KB +106 Bytes
map.js 45.98 KB 45.98 KB No change
matrix.js 138.31 KB 138.31 KB No change
odspDriver.js 88.62 KB 88.67 KB +47 Bytes
odspPrefetchSnapshot.js 41.55 KB 41.59 KB +47 Bytes
sharedString.js 154.82 KB 154.82 KB No change
sharedTree2.js NaN undefined NaN undefined No change
Total Size 1.64 MB 1.64 MB +200 Bytes

Baseline commit: e43927f

Generated by 🚫 dangerJS against b688032

@tylerbutler tylerbutler merged commit b688032 into next Jul 31, 2023
41 checks passed
@tylerbutler tylerbutler deleted the main-next-3df223e branch July 31, 2023 17:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
base: next PRs targeted against next branch main-next-integrate merge-ok
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants