Skip to content

Commit

Permalink
Merge commit '01b596f1d9b8fe29977fa47f2cc610a374faa000' into pg15-mas…
Browse files Browse the repository at this point in the history
…ter-merge

Merge YB master commit 01b596f titled

    Use ldd to determine glibc version instead of scanning binaries.

and committed 2024-03-12T13:07:42-07:00 into YB pg15.  This is the
commit right before bitmap scan support.

YB pg15 initial merge refers to
55782d5.

- TestPgAlterTableColumnType.java:
  - YB master 833fc83 deletes the file
    claiming tests get moved into regress test yb_alter_table_rewrite.
    YB pg15 touched the file.  Delete the file.
- TestPgReplicationSlot.java:
  - consumptionOnSubsetOfColocatedTables: YB master
    af9178c adds this new test.
    Adjacent lines conflict with

        @ignore("YB_TODO(stiwary)")

    added for replicationConnectionConsumption by YB pg15.  Yet, this
    test also needs to be ignored because of assertion failure of
    Assert(HistoricSnapshotActive()) in RelationGetIdentityKeyBitmap.
  - testInnerLSNValues: YB master
    cc88c41 adds this test.  It fails
    on YB pg15.  For now, ignore the test and mark with todo as is done
    for other replication tests.
  - testReplicationConnectionUpdateRestartLSN: (same as
    testInnerLSNValues except it is YB master
    350df35)
  - testReplicationConnectionUpdateRestartLSNWithRestarts: (same as
    testReplicationConnectionUpdateRestartLSN)
- explain.c:
  - function declarations: YB master
    e48f1a8 adds parameter
    yb_estimated_docdb_result_width to ExplainIndexScanDetails.  YB pg15
    changes indentation of those lines.  Trivial merge.
- tablecmds.c:
  - ATRewriteCatalogs: YB pg15 initial merge changes

        IsYBRelation(rel)

    to

        IsYBRelation(tab->rel)

    in some if conditions.  YB master
    833fc83 adds

        !yb_enable_alter_table_rewrite

    to those same if conditions.  Trivial merge.
  - ATRewriteTable: YB pg15 initial merge changes heap_beginscan to
    table_beginscan.  Adjacent lines conflict with YB master
    833fc83 adding logic

        oldrel->rd_att = oldTupDesc;

    Trivial resolution.
  - ATPostAlterTypeParse: upstream PG
    87259588d0ab0b8e742e30596afa7ae25caadb18 adds

        stmt->reset_default_tblspc = true;

    in the same location YB master
    833fc83 adds an if condition.
    Trivial resolution.
- createplan.c:
  - function declarations: like in explain.c, YB master
    e48f1a8 adds parameter
    yb_estimated_docdb_result_width to two functions which YB pg15
    changes indentation for.  Trivial resolution.
- yb_decode.c:
  - YBDecodeInsert: YB master 7ea6665
    removes RelationClose at the end of the function.  Adjacent line
    conflict with YB pg15 merge 417e9b3
    which adds extra argument to the ReorderBufferQueueChange function
    call.  Trivial resolution.
  - YBDecodeDelete: like YB pg15 merge
    417e9b3, pass false for the new
    argument of the new ReorderBufferQueueChange call.
- pgoutput.c:
  - pgoutput_send_begin: YB master
    cc88c41 modifies
    send_replication_origin definition to have !IsYugaByteEnabled.
    Adjacent lines conflict with upstream PG
    d5a9d86d8ffcadc52ff3729cd00fbd83bc38643c.  Furthermore, YB pg15
    merge 417e9b3 had issues in this
    area before, particularly with upstream PG
    a8fd13cab0ba815e9925dc9676e6309f699b5f72.  Upon further inspection,
    find that upstream PG introduced more uses of the send_repl_origin
    function that YB likely does not want to enter.  Solve it with new
    code:

    - For all calls to send_repl_origin, make sure the local variable
      send_replication_origin passed to it is set to false in case
      !IsYugaByteEnabled.  This also should cover any prior uses of the
      local variable.  In order to do this in a way that has less diff
      with upstream PG, leave the initial definition as is and only
      overwrite it with YB logic after.  This means reworking YB master
      cc88c41 which modifies the
      definition itself.
    - Within send_repl_origin, assert !IsYugaByteEnabled.  This means
      reverting the extra !IsYugaByteEnabled check before calling
      send_repl_origin that YB pg15 merge
      417e9b3 added because as long as
      send_replication_origin is false, calling the function should be a
      no-op.  And this way makes diff with upstream PG smaller.
- pquery.c:
  - function declarations: YB master
    9e0f33a removes parameter
    isSingleRowModifyTxn from ProcessQuery.  Upstream PG
    8255c7a5eeba8f1a38b7a431c04909bde4f5e67d and
    2f9661311b83dc481fc19f6e3bda015392010a40 change parameters and
    indentation of this same function.  Trivial merge.
  - ProcessQuery:
    - signature: (same as function declarations minus indentation)
    - YbIsSingleRowModifyTxnPlanned call: YB master
      9e0f33a moves some code to helper
      YbIsSingleRowModifyTxnPlanned in ybcModifyTable.c.  YB pg15
      161efd6 translates some of that
      code for PG 15.  Transfer those edits to the new location.
  - PortalRunMulti:
    - ProcessQuery call: (same as function declarations)
- ybcModifyTable.c: (see pquery.c ProcessQuery).
- ruleutils.c:
  - function declarations:
    - YB master 833fc83 adds new
      parameter is_yb_alter_table to some functions.  YB pg15 changes
      indentation. Trivial merge.
    - YB master 833fc83 also adds new
      function yb_decompile_pk_column_index_array where upstream PG also
      adds new function get_reloptions.  Trivial merge.
  - pg_get_indexdef_worker: conflict between upstream PG
    87259588d0ab0b8e742e30596afa7ae25caadb18 and YB master
    833fc83 which moves the code under
    two if conditions.
  - pg_get_constraintdef_worker:
    - an indexId definition: YB master
      833fc83 moves one indexId
      definition under !is_yb_alter_table condition.  Upstream PG
      8b069ef5dca97cd737a5fd64c420df3cd61ec1c9 and
      94aa7cc5f707712f592885995a28e018c7c80488 change and move this code
      higher.  Move the conditioning to the new location.  Since both
      is_yb_alter_table and !is_yb_alter_table conditions need to be
      moved up, combine them to a single ternary operation.
    - tblspc definition: again, conflict between upstream PG
      87259588d0ab0b8e742e30596afa7ae25caadb18 and YB master
      833fc83 which moves the code
      under one if condition.  One difference is that tblspc declaration
      is left outside the if scope to reduce diff with upstream PG.
- guc.c:
  - ResetAllOptions: upstream PG
    2432b1a04087edc2fd9536c7c9aa4ca03fd1b363 modifies if body and YB
    master d8fc67d changes if
    condition.  Apply both.
  - AtEOXact_GUC: (same as ResetAllOptions)
  - ReportGUCOption: same upstream PG
    2432b1a04087edc2fd9536c7c9aa4ca03fd1b363 moves condition

        (record->flags & GUC_REPORT)

    into new function ReportChangedGUCOptions.  Same YB master
    d8fc67d touches that condition.
    Translate to the new location.
  - set_config_option_ext: (same as ResetAllOptions)
- pathnodes.h:
  - IndexOptInfo: adjacent lines conflict between upstream PG
    74dfe58a5927b22c744b29534e67bfdd203ac028 and YB master
    e48f1a8 (relation.h).
- timestamp regress tests:
  - merge with YB master 77d71da.
- costsize.c:
  - includes: upstream PG f09346a9c6218dd239fdf3a79a729716c0d305bd
    removes optimizer/var.h.  Use optimizer/optimizer.h instead.  This
    was already added by the initial merge
    55782d5.
  - yb_get_ybctid_width: YB master
    e48f1a8 adds heap_open/heap_close.
    Change to table_open/table_close.  This requires adding table.h
    include.
  - yb_get_docdb_result_width: (same as yb_get_ybctid_width)
- yb_virtual_wal_client.c:
  - CleanupAckedTransactions: YB master
    350df35 introduces code using
    lnext, but upstream PG 1cff1b95ab6ddae32faa3efe0d95a820dbfdc164 adds
    another parameter, so pass it.  Similarly, list_delete_cell is also
    affected to remove a parameter, so don't pass it.
- pg15_tests/passing_tests.tsv:
  - remove TestPgAlterTableColumnType tests since that file was deleted
    by YB master 833fc83.
- TestSessionParameters.java:
  - SessionParameters: YB master
    d8fc67d expects extra_float_digits
    default to be 0, but upstream PG
    02ddd499322ab6f2f0d58692955dc9633c2150fc changed the default to 1,
    so adjust accordingly.
  • Loading branch information
jaki committed May 2, 2024
2 parents 64e89ad + 01b596f commit 5fe2012
Show file tree
Hide file tree
Showing 699 changed files with 69,818 additions and 36,850 deletions.
4 changes: 2 additions & 2 deletions .arclint
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@
"(^troubleshoot/backend/gradlew[.]bat)",
"(^troubleshoot/backend/build.gradle.kts)",
"(^troubleshoot/backend/.*/application[.]properties)",
"(^troubleshoot/backend/src/main/resources/mocks/.*)",
"(^troubleshoot/backend/src/test/resources/query/.*)",
"(^troubleshoot/backend/src/main/resources/.*)",
"(^troubleshoot/backend/src/test/resources/.*)",
"(^managed/src/main/resources/openapi/)",
"(^managed/src/main/resources/openapi_templates/)",
"(^yb_release_manifest.json$)",
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ jobs:
remove-dotnet: 'true'
overprovision-lvm: 'true'

- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Build YugabyteDB
run: |
Expand Down
37 changes: 10 additions & 27 deletions .github/workflows/create-repository-dispatch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
createRepositoryDispatch:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: "Determine release train"
id: yb_train
run: |
Expand All @@ -25,7 +25,7 @@ jobs:
fi
fi
echo "Release train determined: $train"
echo "::set-output name=yb_train::${train}"
echo "yb_train=${train}" >> "$GITHUB_ENV"
- name: "Trigger Repository Dispatch - yugabyte/terraform-gcp-yugabyte"
run: |
Expand All @@ -35,7 +35,7 @@ jobs:
--data '{"event_type": "build-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
"yb_release_train": "'${yb_train}'" } }'
- name: "Trigger Repository Dispatch - yugabyte/terraform-aws-yugabyte"
run: |
Expand All @@ -45,7 +45,7 @@ jobs:
--data '{"event_type": "build-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
"yb_release_train": "'${yb_train}'" } }'
- name: "Trigger Repository Dispatch - yugabyte/terraform-azure-yugabyte"
run: |
Expand All @@ -55,7 +55,7 @@ jobs:
--data '{"event_type": "build-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
"yb_release_train": "'${yb_train}'" } }'
- name: "Trigger Repository Dispatch - yugabyte/azure-resource-manager"
run: |
Expand All @@ -65,7 +65,7 @@ jobs:
--data '{"event_type": "build-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
"yb_release_train": "'${yb_train}'" } }'
- name: "Trigger Repository Dispatch - yugabyte/gcp-deployment-manager"
run: |
Expand All @@ -75,7 +75,7 @@ jobs:
--data '{"event_type": "build-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
"yb_release_train": "'${yb_train}'" } }'
- name: "Trigger Repository Dispatch - yugabyte/aws-cloudformation"
run: |
Expand All @@ -85,7 +85,7 @@ jobs:
--data '{"event_type": "build-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
"yb_release_train": "'${yb_train}'" } }'
- name: "Trigger Repository Dispatch - yugabyte/homebrew-tap"
run: |
Expand All @@ -95,17 +95,7 @@ jobs:
--data '{"event_type": "update-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
- name: "Trigger Repository Dispatch - yugabyte/utilities"
run: |
curl -XPOST -u "${{ secrets.PAT_USERNAME}}:${{secrets.PAT_TOKEN}}" \
-H "Accept: application/vnd.github.everest-preview+json" \
-H "Content-Type: application/json" https://api.github.com/repos/yugabyte/utilities/dispatches \
--data '{"event_type": "build-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
"yb_release_train": "'${yb_train}'" } }'
- name: "Trigger Repository Dispatch - yugabyte/charts"
run: |
Expand All @@ -115,14 +105,7 @@ jobs:
--data '{"event_type": "update-on-release", "client_payload":
{"prerelease": "${{ github.event.release.prerelease }}",
"release": "${{github.event.release.tag_name}}",
"yb_release_train": "${{steps.yb_train.outputs.yb_train}}" } }'
- name: "Trigger Repository Dispatch - yugabyte/yugabyte-db-action"
run: |
curl -XPOST -u "${{ secrets.PAT_USERNAME}}:${{secrets.PAT_TOKEN}}" \
-H "Accept: application/vnd.github.everest-preview+json" \
-H "Content-Type: application/json" https://api.github.com/repos/yugabyte/yugabyte-db-action/dispatches \
--data '{"event_type": "on-release"}'
"yb_release_train": "'${yb_train}'" } }'
- name: "Trigger Repository Dispatch - yugabyte/yugabyte-operator"
run: |
Expand Down
7 changes: 4 additions & 3 deletions bin/run_tests_on_spark_tool.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ set -euo pipefail
# shellcheck source=build-support/common-test-env.sh
. "${BASH_SOURCE%/*}/../build-support/common-test-env.sh"

readonly YB_SPARK_DIR=/opt/yb-build/spark/current
YB_SPARK_DIR=${YB_SPARK_DIR:-/opt/yb-build/spark/current}

show_help() {
cat <<-EOT
Expand Down Expand Up @@ -65,7 +65,7 @@ start_spark_worker() {

detect_spark_master_url() {
# shellcheck disable=SC2012
spark_master_log_path=$( ls -t /opt/yb-build/spark/current/logs/*.master.Master*.out | head -1 )
spark_master_log_path=$( ls -t "$YB_SPARK_DIR"/logs/*.master.Master*.out | head -1 )

if [[ ! -f ${spark_master_log_path} ]]; then
fatal "Spark master log file not found at ${spark_master_log_path}"
Expand Down Expand Up @@ -100,7 +100,8 @@ while [[ $# -gt 0 ]]; do
exit 1
;;
--spark-dir)
YB_SPARK_DIR=$1
YB_SPARK_DIR=$2
shift
;;
--build-root)
BUILD_ROOT=$2
Expand Down
43 changes: 41 additions & 2 deletions bin/yugabyted
Original file line number Diff line number Diff line change
Expand Up @@ -2747,16 +2747,55 @@ class ControlScript(object):
"--default_memory_limit_to_ram_ratio=0.35",
"--instance_uuid_override={}".format(self.configs.saved_data.get("master_uuid")),
]

master_flags = self.configs.saved_data.get("master_flags","")

# if a join ip is specified, bring up a shell mode master
if not join_ip:
yb_master_cmd.append("--master_addresses={}".format(master_addresses))
yb_master_cmd.append("--cluster_uuid={}".format(
self.configs.saved_data.get("universe_uuid")))

if self.configs.saved_data.get("master_flags"):
# If allowed_preview_flags_csv is present
# Extract the value of allowed_preview_flags_csv
# Remove the flag present in the master_flags string
if master_flags.find("allowed_preview_flags_csv") != -1:
allowed_preview_flags_csv_start_index = master_flags.find('allowed_preview_flags_csv')
allowed_preview_flags_csv_end_index = master_flags.find('}',
allowed_preview_flags_csv_start_index) + 1
allowed_preview_flags_csv_flag = master_flags[allowed_preview_flags_csv_start_index:\
allowed_preview_flags_csv_end_index]
allowed_preview_flags_csv_flag = allowed_preview_flags_csv_flag[
allowed_preview_flags_csv_flag.find("{")+1:-1]

# Check and handle if the allowed_preview_flags_csv_flag is
# empty after removing the curly braces
if allowed_preview_flags_csv_flag:
# If the value was given through the config file
# remove the starting and ending quotes.
if allowed_preview_flags_csv_flag[0] == "'" and \
allowed_preview_flags_csv_flag[-1] == "'":
allowed_preview_flags_csv_flag = allowed_preview_flags_csv_flag[1:-1]
elif allowed_preview_flags_csv_flag[0] == '"' and \
allowed_preview_flags_csv_flag[-1] == '"':
allowed_preview_flags_csv_flag = allowed_preview_flags_csv_flag[1:-1]

yb_master_cmd.extend(["--allowed_preview_flags_csv={}".format(
allowed_preview_flags_csv_flag)])
else:
# If the flag is empty, reset the configuration by not adding it
pass
# Remove the flag present in master_flags
if allowed_preview_flags_csv_start_index == 0:
master_flags = master_flags[allowed_preview_flags_csv_end_index+1:]
else:
master_flags = master_flags[:allowed_preview_flags_csv_start_index-1] + \
master_flags[allowed_preview_flags_csv_end_index:]

if master_flags:
yb_master_cmd.extend(
["--{}".format(flag) for flag in \
self.configs.saved_data.get("master_flags").split(",")])
master_flags.split(",")])

return yb_master_cmd

Expand Down
5 changes: 4 additions & 1 deletion build-support/jenkins/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,10 @@ THIRDPARTY_BIN=$YB_SRC_ROOT/thirdparty/installed/bin
export PPROF_PATH=$THIRDPARTY_BIN/pprof

# Check for available YBC
ybc_tar=$(find /opt/yb-build/ybc/ -type f | sort -V | tail -1)
ybc_tar=""
if [[ -d /opt/yb-build/ybc ]]; then
ybc_tar=$(find /opt/yb-build/ybc/ -type f | sort -V | tail -1)
fi
ybc_dest="$YB_SRC_ROOT/build/ybc"
if [[ -n ${ybc_tar} ]]; then
log "Unpacking ${ybc_tar} binaries to ${ybc_dest}/"
Expand Down
36 changes: 33 additions & 3 deletions docs/assets/scss/_search.scss
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ body:not(.td-searchpage) {
border-radius: 5px;

nav {
> a {
>a {
position: absolute;
right: 15px;
bottom: 7px;
Expand Down Expand Up @@ -114,6 +114,17 @@ body:not(.td-searchpage) {
&:not(.no-result):hover {
background: #f2f6ff;
}

&.no-result {
a {
color: #507ce1 !important;
font-weight: 500;
}

a:hover {
text-decoration: underline;
}
}
}
}

Expand All @@ -124,6 +135,22 @@ body:not(.td-searchpage) {
}

body.td-searchpage {
#search-summary {
font-size: 20px;
font-weight: 400;
line-height: 28px;
color: #4e5f6d;

a {
color: #507ce1;
font-weight: 500;

&:hover {
text-decoration: underline;
}
}
}

.search-result {
em {
font-weight: 600;
Expand Down Expand Up @@ -329,9 +356,10 @@ body.td-searchpage .td-content {
}

.td-search-input.have-text {

&:hover,
&:focus {
+ .reset-input {
+.reset-input {
opacity: 1;
}
}
Expand Down Expand Up @@ -386,7 +414,9 @@ body.td-searchpage .td-content {
}

@keyframes cssAnimation {
to { visibility: visible; }
to {
visibility: visible;
}
}
}

Expand Down
8 changes: 4 additions & 4 deletions docs/config/_default/menus.toml
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@
weight = 1
identifier = "yugabytedb-releases"
parent = "releases"
url = "/preview/releases/release-notes/"
url = "/preview/releases/ybdb-releases/"
[main.params]
excludeVersion = true
imageUrl = "/icons/database.svg"
Expand Down Expand Up @@ -711,14 +711,14 @@
[[preview_releases]]
name = "YugabyteDB"
weight = 4
identifier = "release-notes"
url = "/preview/releases/release-notes/"
identifier = "ybdb-releases"
url = "/preview/releases/ybdb-releases/"
[preview_releases.params]
showSection = true

[[preview_releases]]
name = "End of life and older previews"
parent = "release-notes"
parent = "ybdb-releases"
weight = 9999
identifier = "end-of-life"
[preview_releases.params]
Expand Down
1 change: 1 addition & 0 deletions docs/config/_default/params.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ description = "YugabyteDB, the transactional, high-performance database for buil
copyright = "Yugabyte, Inc."
privacy_policy = "https://www.yugabyte.com/privacy-policy/"
algolia_docsearch = true
algolia_sequence_expressions = true
kapa_ai = true
search_banner = true
version_menu = "Releases"
Expand Down
8 changes: 1 addition & 7 deletions docs/content/preview/admin/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ YugabyteDB ships with a variety of tools to interact with, manage, and configure
![Tools and their purpose](/images/admin/tools_functionalities.png)

{{<note title="Note">}}
For information about configuring [YB-Master](../reference/configuration/yb-master/) and [YB-TServer](../reference/configuration/yb-tserver/) services, refer to [Configuration](../reference/configuration/).
For information about [yugabyted](../reference/configuration/yugabyted/) and configuring [YB-Master](../reference/configuration/yb-master/) and [YB-TServer](../reference/configuration/yb-tserver/) services, refer to [Configuration](../reference/configuration/).
{{</note>}}

## Tools
Expand Down Expand Up @@ -67,10 +67,4 @@ For information about configuring [YB-Master](../reference/configuration/yb-mast
href="yb-ts-cli/"
icon="fa-solid fa-toolbox">}}

{{<index/item
title="yb-docker-ctl"
body="Create and manage Docker-based local clusters."
href="yb-docker-ctl/"
icon="fa-brands fa-docker">}}

{{</index/block>}}
6 changes: 6 additions & 0 deletions docs/content/preview/admin/yb-docker-ctl.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,12 @@ menu:
type: docs
---

{{< warning title="yb-docker-ctl is deprecated" >}}

yb-docker-ctl is no longer maintained. The recommended method to run YugabyteDB in Docker is to use [yugabyted](../../reference/configuration/yugabyted/#create-a-multi-region-cluster-in-docker). For more information, see the [Quick Start](/preview/quick-start/docker/).

{{< /warning >}}

The `yb-docker-ctl` utility provides a basic command line interface (CLI), or shell, for administering a local Docker-based cluster for development and learning. It manages the [YB-Master](../yb-master/) and [YB-TServer](../yb-tserver/) containers to perform the necessary administration.

{{% note title="macOS Monterey" %}}
Expand Down
Loading

0 comments on commit 5fe2012

Please sign in to comment.