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

upgrade bazel buildfarm to v2.7.0 #12

Draft
wants to merge 59 commits into
base: bazel-ios-fork
Choose a base branch
from
Draft
Changes from 1 commit
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
ec4b82c
Manipulate worker set directly in RSB
werkt Sep 26, 2023
c48d600
Remove publishTtlMetric option
werkt Sep 26, 2023
2abad58
Config-compatible behavior for publishTtlMetric
werkt Oct 4, 2023
10189d6
Correct logging advisements for current Java
werkt Sep 26, 2023
0c30cb0
Rename GracefulShutdownTest
werkt Oct 3, 2023
5a0d8d6
Remove WebController
werkt Oct 3, 2023
fa8dd6f
Interrupt+Join operationQueuer/dispatchMonitor
werkt Oct 3, 2023
60093db
Present operationNames by stage
werkt Oct 3, 2023
9ff8e64
Remove subscribeToBackplane, adjust failsafe op
werkt Sep 26, 2023
b21ab2e
Removing AWS/GCP Metrics and Admin controls
werkt Sep 28, 2023
f97f048
Remove unused setOnCancelHandler
werkt Oct 3, 2023
c2c1544
Update BWoB docs for ensureOutputsPresent
werkt Oct 4, 2023
09015c9
Disable Bzlmod explicitly in .bazelrc
meteorcloudy Oct 6, 2023
1041b57
Log write errors with worker address
amishra-u Sep 29, 2023
30412ad
Revert "Use integer ids for Sqlite bidirectional index"
80degreeswest Oct 8, 2023
8379068
Common String.format for PipelineStage
werkt Oct 3, 2023
fd20d13
Cleanup matched logic in SWC listener
werkt Oct 3, 2023
632fceb
Refactor SWC matcher and clarify Nullable
werkt Oct 3, 2023
7385c74
Interrupt matchStage to induce prepare shutdown
werkt Oct 3, 2023
79cf648
Specify example config with grpc target
werkt Oct 3, 2023
d73628b
Remove SpringBoot usage
werkt Oct 3, 2023
6f88e34
Enable graceful shutdown for server (#1490)
80degreeswest Oct 10, 2023
81122e7
refactor: code cleanup
jasonschroeder-sfdc Oct 6, 2023
ad44854
Log paths created on putDirectory
werkt Jun 22, 2023
b31ffed
Permit regex realInputDirectories
werkt Jul 7, 2023
1dec684
Log execPath rather than the cache dir path
werkt Jul 7, 2023
6af857a
Shore up OutputDirectory for silence on duplicates
werkt Jul 7, 2023
71a928c
Trigger realInputDirectories to have empty files
werkt Jul 7, 2023
f8017bd
Switch to positive check for linkInputDirectories
werkt Jul 8, 2023
5d88e54
docs(configuration): document --prometheus_port CLI argument
jasonschroeder-sfdc Oct 12, 2023
21448c3
docs(configuration): readability and typos
jasonschroeder-sfdc Oct 12, 2023
461cc5a
style(configuration.md): table formatting
jasonschroeder-sfdc Oct 12, 2023
b74531c
feat: support --redis_uri command line option
jasonschroeder-sfdc Oct 6, 2023
d860b27
docs(configuration): document the --redis_uri command line options
jasonschroeder-sfdc Oct 12, 2023
10bf139
Example should use `container_image` instead of `java_image`
sousajo-cc Oct 11, 2023
9d4c86c
chore: bump rules_jvm_external
jasonschroeder-sfdc Sep 22, 2023
5bc4564
chore: bump rules_cc
jasonschroeder-sfdc Sep 22, 2023
edf2211
Implement local resources for workers (#1282)
luxe Oct 17, 2023
97e3b90
build: override grpc dependencies with our dependencies
jasonschroeder-sfdc Oct 16, 2023
96f239d
chore(deps): bump protobuf runtime to 3.19.1
jasonschroeder-sfdc Oct 16, 2023
af3f34e
chore(deps) add transitive dependencies
jasonschroeder-sfdc Oct 16, 2023
380f8a1
feat: add Proto reflection service to shard worker
jasonschroeder-sfdc Oct 16, 2023
7e7979d
fixup! build: override grpc dependencies with our dependencies
jasonschroeder-sfdc Oct 16, 2023
1f9d01f
fixup! chore(deps) add transitive dependencies
jasonschroeder-sfdc Oct 16, 2023
578589f
Bug: Fix Blocked thread in WriteStreamObserver Caused by CASFile Writ…
amishra-u Oct 24, 2023
dfa5937
Pin the Java toolchain to `remotejdk_17` (#1509)
stefanobaghino Oct 24, 2023
f6459d1
docs: add markdown language specifiers for code blocks
jasonschroeder-sfdc Oct 18, 2023
018e177
Support OutputPaths in OutputDirectory
werkt Oct 25, 2023
8b37013
Permit Absolute Symlink Targets with configuration
werkt Oct 26, 2023
df9ce1d
chore: update bazel to 6.4.0 (#1513)
jasonschroeder-sfdc Oct 29, 2023
bd740c9
Rename instance types (#1514)
luxe Oct 30, 2023
2a61f77
Create SymlinkNode outputs during upload (#1515)
werkt Oct 30, 2023
76c2657
feat: Implement CAS lease extension (#1455)
amishra-u Oct 31, 2023
cfa2e18
Bump org.json:json from 20230227 to 20231013 in /admin/main (#1516)
dependabot[bot] Oct 31, 2023
3167fc5
Remove custom Spring exit
chenj-hub Sep 16, 2024
2b9b79b
Merge commit 'cfa2e18724914034eb19c4c01f293117610fa0b7' into jackies/…
chenj-hub Sep 23, 2024
7225f81
Pass failing tests
chenj-hub Sep 23, 2024
5a507ce
Temporarily make worker public
chenj-hub Sep 26, 2024
cd5591a
Re-add missing graceful shutdown functionality (#1520)
80degreeswest Nov 1, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Interrupt matchStage to induce prepare shutdown
The only signal to a waiting match that will halt its current listen
loop for a valid unique operation is an interrupt.
werkt committed Oct 9, 2023
commit 7385c74cf0c711a91d1130fa8f406dcb57a8dc60
15 changes: 10 additions & 5 deletions src/main/java/build/buildfarm/worker/Pipeline.java
Original file line number Diff line number Diff line change
@@ -61,9 +61,12 @@ public void close() throws InterruptedException {

/** Inform MatchStage to stop matching or picking up new Operations from queue. */
public void stopMatchingOperations() {
for (PipelineStage stage : stageClosePriorities.keySet()) {
for (Map.Entry<PipelineStage, Thread> entry : stageThreads.entrySet()) {
PipelineStage stage = entry.getKey();
if (stage instanceof MatchStage) {
((MatchStage) stage).prepareForGracefulShutdown();
MatchStage matchStage = (MatchStage) stage;
matchStage.prepareForGracefulShutdown();
entry.getValue().interrupt();
return;
}
}
@@ -134,15 +137,17 @@ private void join(boolean closeStage) throws InterruptedException {
}
}
if (stageToClose != null && !stageToClose.isClosed()) {
log.log(Level.FINER, "Closing stage at priority " + maxPriority);
log.log(Level.FINER, "Closing stage " + stageToClose + " at priority " + maxPriority);
stageToClose.close();
}
}
boolean longStageWait = !closeStage;
for (Map.Entry<PipelineStage, Thread> stageThread : stageThreads.entrySet()) {
PipelineStage stage = stageThread.getKey();
Thread thread = stageThread.getValue();
try {
thread.join(closeStage ? 1 : 1000);
// 0 is wait forever, no instant wait
thread.join(longStageWait ? 1000 : 1);
} catch (InterruptedException e) {
if (!closeStage) {
synchronized (this) {
@@ -172,8 +177,8 @@ private void join(boolean closeStage) throws InterruptedException {
+ stageClosePriorities.get(stage));
thread.interrupt();
}
longStageWait = false;
}
closeStage = false;
for (PipelineStage stage : inactiveStages) {
synchronized (this) {
stageThreads.remove(stage);