Compare commits

..

24 Commits

Author SHA1 Message Date
Nurlan Moldomurov
cfaa2087cb Fix go mod deps 2022-01-11 21:07:30 +03:00
Carlos Salguero
678cd3472a Merge branch 'release-3.3.2' of percona.github.com:percona/percona-toolkit into release-3.3.2 2021-09-30 15:21:39 -03:00
Carlos Salguero
7d76913185 Updated changelog 2021-09-30 15:21:23 -03:00
Carlos Salguero
33a2108822 Merge branch '3.x' into release-3.3.2 2021-09-27 08:27:00 -03:00
Carlos Salguero
9d6508da5f PT-1900 pt-query-digest not hiding parameter properly sometimes when parameter=binary (#510)
* PT-1900 WIP

* Fixed quoted strings regexes

* PT-1900 Fixed query rewriter to properly handle quoted text

* Fixed merge conflicts with 3.x branch
2021-09-27 08:23:23 -03:00
Carlos Salguero
d91ba9cadd PT-1959 Updated version number (#515)
Not updated in files that will be updated during the build like the
python script, Makefile.PL and some other files like documentation.
2021-09-20 10:27:29 -03:00
Jelle van der Waa
b19654fa48 Make build reproducible (#499)
By setting SOURCE_DATE_EPOCH builds the build binaries can become
reproducible as a rebuild will take the old build date as input.

Motivation: https://reproducible-builds.org
2021-09-20 10:26:27 -03:00
Carlos Salguero
dd2b144004 PMM-8575 migrate toolkit to modules (#512)
* PMM-8575 Fixed test

Fixed sandbox used by go programs, updated all tests.

* PMM-8575 Fixed test

Fixed sandbox used by go programs, updated all tests.

* Removed Gopkg

* Switched to go 1.16

* Updated go.mod

* Upgraded deps

* Updated deps
2021-09-10 16:08:58 -03:00
Sergey Kuzmichev
ad593c6de9 Fix for PT-1983: pt-summary has missing records for memory due to dmidecode changes (#513)
* Fix for PT-1983 pt-summary missing one DIMM

This is a fix for PT-1983. dmidecode now doesn't print "Speed: UKNOWN" for
missing DIMMs. pt-summary code relies on the Speed field to be there, and when
it's missing, rows get concatenated (or rather not broken down correctly).
Adjusted the relevant code to not rely on the Speed field to be present.

* Added test for the fix for PT-1983

Due to dmidecode changes in 3.2, pt-summary needs to be able to work
with memory-related info with some missing fields in the dmidecode
output. This commit adds a test with dmidecode output modified to
include new format.

In addition, fixing test that are failing due to commit c9ec74c251

* PT-1983: updated changelog to reflect the bug fixed
2021-09-08 07:32:30 -03:00
Carlos Salguero
e389d2181a PT-1800 Updated docs (#511) 2021-08-31 08:16:34 -03:00
Sergey Pronin
ee6a9da438 Update installation.rst (#508)
1. the list of operation systems is outdated
2. not on any installation page we have the list of supported OSes
3. we have supported OSes in our lifecycle doc - why add it here?
2021-08-20 11:22:54 +03:00
Paul Jacobs
e71fc0376b Spelling 2021-08-20 08:21:18 +03:00
Carlos Salguero
4b8ae0563f PMM-8489 Cluster ID for standalone server (#507)
* PMM-8489 Cluster ID for standalone server

* Updated error type

* Updated MyState to ignore errors on standalone servers

* Deleted dep files

* Revert "Deleted dep files"

This reverts commit 236303196b.

* Removed go.mod &^ updated lock

* Updated mongodb driver

* PMM-8489 Updated errors list
2021-08-18 11:22:47 -03:00
Roma Novikov
7eaca8a98e versions update (#505)
* versions update 

according to https://www.percona.com/services/policies/percona-software-support-lifecycle#pt

* correcting Debian versions (forgot to change them)

according to https://www.percona.com/services/policies/percona-software-support-lifecycle#pt
2021-08-10 07:50:41 -03:00
Carlos Salguero
d14d18a1bf PT-1997 Added error logs (#506) 2021-08-03 09:07:25 -03:00
Carlos Salguero
297bf58e32 Updated changelog for (WIP) 3.3.2 2021-07-31 10:03:26 -03:00
Carlos Salguero
21c154d86b Updated changelog for PT-1940 2021-07-30 19:46:13 -03:00
duxthefux
4a32ca7675 Added mysql version check for bug fix introduced in 8.0.14 (#474)
Thanks for the fix.
2021-07-30 19:41:53 -03:00
dependabot[bot]
35a19ad0a4 Bump go.mongodb.org/mongo-driver from 1.3.4 to 1.5.1 (#501)
Bumps [go.mongodb.org/mongo-driver](https://github.com/mongodb/mongo-go-driver) from 1.3.4 to 1.5.1.
- [Release notes](https://github.com/mongodb/mongo-go-driver/releases)
- [Commits](https://github.com/mongodb/mongo-go-driver/compare/v1.3.4...v1.5.1)

---
updated-dependencies:
- dependency-name: go.mongodb.org/mongo-driver
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-29 16:27:18 -03:00
Carlos Salguero
ecf43e2a17 PT-1985 pt-deadlock db schema check (#502) 2021-07-29 12:15:53 -03:00
Carlos Salguero
543f30c073 PT-1986 Check schema exists upon start (#503) 2021-07-29 12:15:23 -03:00
Andrii Dema
d84cb2496e PT-1930: pt-k8s-debug-collector should not attempt collecting PXC information when running against PSMDB (#498)
* PT-1930: pt-k8s-debug-collector should not attempt collecting PXC information when running against PSMDB

https://jira.percona.com/browse/PT-1930

Removed PXC resources to collect while running with `--resource psmdb`

* Add more `psmdb` resources

Also resolves https://jira.percona.com/browse/PT-1934

* Add `resourceType` function to collect summaries for PXC/PSMDB when option `--cluster` is specified
2021-07-28 09:01:20 -03:00
Andrii Dema
b0597554ad PT-1931: pt-k8s-debug-collector does not gather summaries for PSMDB (#500)
https://jira.percona.com/browse/PT-1931

When I tried to reproduce the bug, `pt-mongodb-summary` didn't launch only when option `--cluster` was specified. This PR fixes this behavior and also fixes https://jira.percona.com/browse/PT-1932
2021-07-27 13:49:58 -03:00
Andrii Dema
1114eb4dad PT-1926: pt-k8s-debug-collector should not collect passwords (#497)
https://jira.percona.com/browse/PT-1926

Save secrets only with configuration data
2021-07-21 10:38:20 -03:00
88 changed files with 3585 additions and 1211 deletions

View File

@@ -1,26 +1,50 @@
Changelog for Percona Toolkit
v3.3.2 WIP release date not set yet
* Improvement PT-1417: Inconsistent creation of toolkit tables
* Fixed bug PT-1627: pt-mysql-summary doesn't verify which version of jemalloc is in use
* Fixed bug PT-1747: pt-online-schema-change: metadata lock can break database for rebuild_constraints
* Improvement PT-1800: PTDEBUG=1 exposes passwords
* Fixed bug PT-1900: pt-query-digest not hiding parameter properly sometimes when parameter=binary
* Improvement PT-1940: ptsoc dropswap with mysql8: revise rejection (Thanks duxthefux)
* Fixed bug PT-1953: pt-summary typo: Memory mamagement.
* Fixed bug PT-1959: go part of the toolkit still has the version 3.3.0
* Fixed bug PT-1965: pt-stalk --mysql-only doesn't collect mysqladmin outputs (Thanks Sergey Kuzmichev)
* Fixed bug PT-1966: Test no_drop_no_swap for the pt-online-schema-change is broken (Thanks Tsubasa Tanaka)
* Fixed bug PT-1974: Support fingerprinting for --print in pt-kill
* Fixed bug PT-1983: pt-summary missing one DIMM
* Admin task PT-2009: Update Go Lang dependencies
* Admin task PT-2011: Make build reproducible
v3.3.1 release 2021-04-28
* Fixed bug PT-716 : pt-summary reports wrong memory size
* Fixed bug PT-1914: Column data lost when 'Generated' is in the column comment
* Fixed bug PT-1919: pt-online-schema change drop_swap can lose triggers. (Thanks Bob)
* Fixed bug PT-1943: BEFORE triggers are dropped after pt-online-schema-change run
* Fixed bug PT-1965: pt-stalk --mysql-only doesn't collect mysqladmin outputs (Thanks Sergey Kuzmichev)
* Fixed bug PT-1966: Fixed test (Thanks @yoku0825)
* Improvement PT-1974: Support fingerprinting for --print in pt-kill (Thanks Iwo Panowicz)
v3.3.0 release 2021-01-14
* Fixed bug PT-1857: pt-heartbeat cannot reconnect.
* Improvement PT-1940: Added mysql version check for bug fix introduced in 8.0.14 (Thanks duxthefux)
* Fixed bug PT-1919: pt-online-schema change drop_swap can lose triggers. (Thanks Bob)
* Fixed bug PT-1914: Column data lost when 'Generated' is in the column comment
* Fixed bug PT-716 : pt-summary reports wrong memory size
* Fixed bug PT-1983: pt-summary missing one DIMM (Thanks Sergey Kuzmichev)
v3.3.0 release 2021-01-14
* Fixed bug PT-169 : pt-online-schema-change FKs error handling.
* Fixed bug PT-1892: pt-summary says sshd not running
* Fixed bug PT-1881: pt-upgrade fails when query including format strings and SQL errors is given (Thanks Nayuta Yanagisawa)
* Fixed bug PT-1859: pt-pg-summary fails for Postgres12 (Thanks Sergey Kuzmichev)
* Improvement PT-1853: Added --no-check-foreing-keys to pt-osc
* Improvement PT-1851: Backslashes missing from documentation
* Improvement PT-1836: Review and consider lintian reported issues
* Fixed bug PT-1829: pt-heartbeat doesn't reconnect for check-read-only
* Fixed bug PT-1822: pt-mongodb-summary fails on standalone mongodb instances
* Fixed bug PT-1518: pt-table-checksum gives error CRC32. (Thanks @ovidiustanila)
* Fixed bug PT-1822: pt-mongodb-summary fails on standalone mongodb instances
* Fixed bug PT-1829: pt-heartbeat doesn't reconnect for check-read-only
* Improvement PT-1836: Review and consider lintian reported issues
* Improvement PT-1851: Backslashes missing from documentation
* Improvement PT-1853: Added --no-check-foreing-keys to pt-osc
* Fixed bug PT-1857: pt-heartbeat cannot reconnect.
* Fixed bug PT-1859: pt-pg-summary fails for Postgres12 (Thanks Sergey Kuzmichev)
* Fixed bug PT-1881: pt-upgrade fails when query including format strings and SQL errors is given (Thanks Nayuta Yanagisawa)
* Fixed bug PT-1892: pt-summary says sshd not running
v3.2.0 release 2020-04-23

527
Gopkg.lock generated
View File

@@ -1,527 +0,0 @@
# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'.
[[projects]]
digest = "1:b856d8248663c39265a764561c1a1a149783f6cc815feb54a1f3a591b91f6eca"
name = "github.com/Masterminds/semver"
packages = ["."]
pruneopts = ""
revision = "c7af12943936e8c39859482e61f0574c2fd7fc75"
version = "v1.4.2"
[[projects]]
digest = "1:f82b8ac36058904227087141017bb82f4b0fc58272990a4cdae3e2d6d222644e"
name = "github.com/StackExchange/wmi"
packages = ["."]
pruneopts = ""
revision = "5d049714c4a64225c3c79a7cf7d02f7fb5b96338"
version = "1.0.0"
[[projects]]
digest = "1:15d017551627c8bb091bde628215b2861bed128855343fdd570c62d08871f6e1"
name = "github.com/alecthomas/kingpin"
packages = ["."]
pruneopts = ""
revision = "947dcec5ba9c011838740e680966fd7087a71d0d"
version = "v2.2.6"
[[projects]]
branch = "master"
digest = "1:a7f619ffc7b99687f9444bd0a07509fec8ae708a7175d234878129896c0918a8"
name = "github.com/alecthomas/template"
packages = [
".",
"parse",
]
pruneopts = ""
revision = "fb15b899a75114aa79cc930e33c46b577cc664b1"
[[projects]]
branch = "master"
digest = "1:86ea497979270399c5e544bbdc6f3a846078cd7c6d9be40fd0012ab54fee4052"
name = "github.com/alecthomas/units"
packages = ["."]
pruneopts = ""
revision = "c3de453c63f4bdb4dadffab9805ec00426c505f7"
[[projects]]
digest = "1:0deddd908b6b4b768cfc272c16ee61e7088a60f7fe2f06c547bd3d8e1f8b8e77"
name = "github.com/davecgh/go-spew"
packages = ["spew"]
pruneopts = ""
revision = "8991bc29aa16c548c550c7ff78260e27b9ab7c73"
version = "v1.1.1"
[[projects]]
digest = "1:c3f4f5bc77b998746a8061a52a2b8fb172c1744801165227692d702483995d58"
name = "github.com/go-ini/ini"
packages = ["."]
pruneopts = ""
revision = "d4cae42d398bc0095297fc3315669590d29166ea"
version = "v1.46.0"
[[projects]]
digest = "1:fd2ee29b7807f198e72dbd6371267b34d05aa83151c8c81b2ade14854e50f4ee"
name = "github.com/go-logr/logr"
packages = ["."]
pruneopts = ""
revision = "d18fcbf02861580d05a1f23601145b272c4e7b4b"
version = "v0.2.0"
[[projects]]
digest = "1:b6581f9180e0f2d5549280d71819ab951db9d511478c87daca95669589d505c0"
name = "github.com/go-ole/go-ole"
packages = [
".",
"oleutil",
]
pruneopts = ""
revision = "97b6244175ae18ea6eef668034fd6565847501c9"
version = "v1.2.4"
[[projects]]
digest = "1:d69d2ba23955582a64e367ff2b0808cdbd048458c178cea48f11ab8c40bd7aea"
name = "github.com/gogo/protobuf"
packages = [
"proto",
"sortkeys",
]
pruneopts = ""
revision = "5628607bb4c51c3157aacc3a50f0ab707582b805"
version = "v1.3.1"
[[projects]]
digest = "1:a01080d20c45c031c13f3828c56e58f4f51d926a482ad10cc0316225097eb7ea"
name = "github.com/go-stack/stack"
packages = ["."]
pruneopts = ""
revision = "2fee6af1a9795aafbe0253a0cfbdf668e1fb8a9a"
version = "v1.8.0"
[[projects]]
digest = "1:530233672f656641b365f8efb38ed9fba80e420baff2ce87633813ab3755ed6d"
name = "github.com/golang/mock"
packages = ["gomock"]
pruneopts = ""
revision = "9fa652df1129bef0e734c9cf9bf6dbae9ef3b9fa"
version = "1.3.1"
[[projects]]
branch = "master"
digest = "1:c823f556d11763bb805a60a77226ae321843c9bd1454ee5b808ca169ac515762"
name = "github.com/golang/snappy"
packages = ["."]
pruneopts = ""
revision = "ff6b7dc882cf4cfba7ee0b9f7dcc1ac096c554aa"
[[projects]]
digest = "1:ad92aa49f34cbc3546063c7eb2cabb55ee2278b72842eda80e2a20a8a06a8d73"
name = "github.com/google/uuid"
packages = ["."]
pruneopts = ""
revision = "0cd6bf5da1e1c83f8b45653022c74f71af0538a4"
version = "v1.1.1"
[[projects]]
digest = "1:16ecf9e89b8b1310d9566a53484c31c5241bb47c32162eba780b46c0dfb58fef"
name = "github.com/google/gofuzz"
packages = ["."]
pruneopts = ""
revision = "db92cf7ae75e4a7a28abc005addab2b394362888"
version = "v1.1.0"
[[projects]]
branch = "master"
digest = "1:4fbfcfe715329e2f09ea644657aa791b81e73a0c835a4f79b9a0dfff0513e2b8"
name = "github.com/hashicorp/go-version"
packages = ["."]
pruneopts = ""
revision = "192140e6f3e645d971b134d4e35b5191adb9dfd3"
[[projects]]
branch = "master"
digest = "1:f81c8d7354cc0c6340f2f7a48724ee6c2b3db3e918ecd441c985b4d2d97dd3e7"
name = "github.com/howeyc/gopass"
packages = ["."]
pruneopts = ""
revision = "bf9dde6d0d2c004a008c27aaee91170c786f6db8"
[[projects]]
digest = "1:f02c9b5d6682e16bb484f964445b22af73c0af1c66a7d3f75503adda88610d26"
name = "github.com/klauspost/compress"
packages = [
"fse",
"huff0",
"snappy",
"zstd",
"zstd/internal/xxhash",
]
pruneopts = ""
revision = "a8f778f32d263b3a95d1e5a90534f5f680560abe"
version = "v1.10.10"
[[projects]]
digest = "1:0f51cee70b0d254dbc93c22666ea2abf211af81c1701a96d04e2284b408621db"
name = "github.com/konsorten/go-windows-terminal-sequences"
packages = ["."]
pruneopts = ""
revision = "f55edac94c9bbba5d6182a4be46d86a2c9b5b50e"
version = "v1.0.2"
[[projects]]
digest = "1:f4216047c24ab66fb757045febd7dac4edc6f4ad9f6c0063d0755d654d04f25e"
name = "github.com/lib/pq"
packages = [
".",
"oid",
"scram",
]
pruneopts = ""
revision = "3427c32cb71afc948325f299f040e53c1dd78979"
version = "v1.2.0"
[[projects]]
digest = "1:d5d962b7a8d95b9e6226f6b831a7e50237acf1730dcace6e8cb87c6dd628ef54"
name = "github.com/mattn/go-shellwords"
packages = ["."]
pruneopts = ""
revision = "36a9b3c57cb5caa559ff63fb7e9b585f1c00df75"
version = "v1.0.6"
[[projects]]
digest = "1:a067513044dc491395a58f56f39cedddb5ad35789b832b570c283a64d712f81b"
name = "github.com/montanaflynn/stats"
packages = ["."]
pruneopts = ""
revision = "eeaced052adbcfeea372c749c281099ed7fdaa38"
version = "0.2.0"
[[projects]]
branch = "master"
digest = "1:78d0c21e99e070382e26f862c80a9354593880d51461a4aeacd490f52d6e5942"
name = "github.com/pborman/getopt"
packages = ["."]
pruneopts = ""
revision = "ee0cd42419d3adee9239dbd1c375717fe482dac7"
[[projects]]
branch = "master"
digest = "1:457024f04029bb321d759cc3b2c46b7e0e43572e3a663ce7d006aeb41efa2b17"
name = "github.com/percona/go-mysql"
packages = ["query"]
pruneopts = ""
revision = "197f4ad8db8d1b04ff408042119176907c971f0a"
[[projects]]
digest = "1:c45802472e0c06928cd997661f2af610accd85217023b1d5f6331bebce0671d3"
name = "github.com/pkg/errors"
packages = ["."]
pruneopts = ""
revision = "614d223910a179a466c1767a985424175c39b465"
version = "v0.9.1"
[[projects]]
digest = "1:256484dbbcd271f9ecebc6795b2df8cad4c458dd0f5fd82a8c2fa0c29f233411"
name = "github.com/pmezard/go-difflib"
packages = ["difflib"]
pruneopts = ""
revision = "792786c7400a136282c1664665ae0a8db921c6c2"
version = "v1.0.0"
[[projects]]
digest = "1:9d1d58facb0409ecf634fec680d83b6f57f4e619458f7b7b5e4dda1665fd89ec"
name = "github.com/prometheus/common"
packages = ["log"]
pruneopts = ""
revision = "f39dfa2b000545b3a763b844012958c275a62266"
version = "v0.13.0"
[[projects]]
digest = "1:9d35a914be9b807050704f377becb1f864ee46b000f590566a8b9fb871d6c571"
name = "github.com/shirou/gopsutil"
packages = [
"cpu",
"internal/common",
"mem",
"net",
"process",
]
pruneopts = ""
revision = "9aa2bee419e8b592ecf9f46018f3f1f6a5474c10"
version = "v2.20.8"
[[projects]]
digest = "1:1a405cddcf3368445051fb70ab465ae99da56ad7be8d8ca7fc52159d1c2d873c"
name = "github.com/sirupsen/logrus"
packages = ["."]
pruneopts = ""
revision = "839c75faf7f98a33d445d181f3018b5c3409a45e"
version = "v1.4.2"
[[projects]]
digest = "1:83fd2513b9f6ae0997bf646db6b74e9e00131e31002116fda597175f25add42d"
name = "github.com/stretchr/testify"
packages = [
"assert",
"require",
]
pruneopts = ""
revision = "f654a9112bbeac49ca2cd45bfbe11533c4666cf8"
version = "v1.6.1"
[[projects]]
branch = "master"
digest = "1:ad74f33a69bd6ab0bd7287003b7c1069b94cfb5213eb5597005fe2963d7dfca9"
name = "github.com/xdg/scram"
packages = ["."]
pruneopts = ""
revision = "7eeb5667e42c09cb51bf7b7c28aea8c56767da90"
[[projects]]
branch = "master"
digest = "1:62f6eb06f6f39d18fc961956116a50a0e52b89961ed8a83bbb950b4cfb09fe67"
name = "github.com/xdg/stringprep"
packages = ["."]
pruneopts = ""
revision = "73f8eece6fdcd902c185bf651de50f3828bed5ed"
[[projects]]
digest = "1:6085253f6bc0d9e4761ce971e02849b626de51735b35f362a34dbe5dbc3a2168"
name = "go.mongodb.org/mongo-driver"
packages = [
"bson",
"bson/bsoncodec",
"bson/bsonoptions",
"bson/bsonrw",
"bson/bsontype",
"bson/primitive",
"event",
"internal",
"mongo",
"mongo/options",
"mongo/readconcern",
"mongo/readpref",
"mongo/writeconcern",
"tag",
"version",
"x/bsonx",
"x/bsonx/bsoncore",
"x/mongo/driver",
"x/mongo/driver/address",
"x/mongo/driver/auth",
"x/mongo/driver/auth/internal/gssapi",
"x/mongo/driver/connstring",
"x/mongo/driver/description",
"x/mongo/driver/dns",
"x/mongo/driver/mongocrypt",
"x/mongo/driver/mongocrypt/options",
"x/mongo/driver/operation",
"x/mongo/driver/session",
"x/mongo/driver/topology",
"x/mongo/driver/uuid",
"x/mongo/driver/wiremessage",
]
pruneopts = ""
revision = "4ce2db174a8ec022f504b9bc0e768e284e44708f"
version = "v1.3.4"
[[projects]]
branch = "master"
digest = "1:2f8d339c3b89d5abf9a78aafe1e9fbe548f3b1fb9be5c3117036940904d39527"
name = "golang.org/x/crypto"
packages = [
"pbkdf2",
"ssh/terminal",
]
pruneopts = ""
revision = "71b5226ff73902d121cd9dbbdfdb67045a805845"
[[projects]]
branch = "master"
digest = "1:adcb9e84ce154ef1d45851b57c40f8a211db3e36373a65b7c4f10c79b7428718"
name = "golang.org/x/net"
packages = [
"context",
"http/httpguts",
"http2",
"http2/hpack",
"idna",
]
pruneopts = ""
revision = "112230192c580c3556b8cee6403af37a4fc5f28c"
[[projects]]
branch = "master"
digest = "1:9f6efefb4e401a4f699a295d14518871368eb89403f2dd23ec11dfcd2c0836ba"
name = "golang.org/x/sync"
packages = ["semaphore"]
pruneopts = ""
revision = "112230192c580c3556b8cee6403af37a4fc5f28c"
[[projects]]
branch = "master"
digest = "1:ffaa20332022643a821848aa2322787bbfbf06bceb4b4e84cde3b05d07fa51ac"
name = "golang.org/x/sys"
packages = [
"unix",
"windows",
"windows/registry",
"windows/svc/eventlog",
]
pruneopts = ""
revision = "749cb33beabd9aa6d3178e3de05bcc914f70b2bf"
[[projects]]
digest = "1:740b51a55815493a8d0f2b1e0d0ae48fe48953bf7eaf3fcc4198823bf67768c0"
name = "golang.org/x/text"
packages = [
"internal/gen",
"internal/triegen",
"internal/ucd",
"transform",
"unicode/cldr",
"unicode/norm",
]
pruneopts = ""
revision = "342b2e1fbaa52c93f31447ad2c6abc048c63e475"
version = "v0.3.2"
[[projects]]
digest = "1:15d017551627c8bb091bde628215b2861bed128855343fdd570c62d08871f6e1"
name = "gopkg.in/alecthomas/kingpin.v2"
packages = ["."]
pruneopts = ""
revision = "947dcec5ba9c011838740e680966fd7087a71d0d"
version = "v2.2.6"
[[projects]]
digest = "1:fccda34e4c58111b1908d8d69bf8d57c41c8e2542bc18ec8cd38c4fa21057f71"
name = "golang.org/x/text"
packages = [
"collate",
"collate/build",
"internal/colltab",
"internal/gen",
"internal/language",
"internal/language/compact",
"internal/tag",
"internal/triegen",
"internal/ucd",
"language",
"secure/bidirule",
"transform",
"unicode/bidi",
"unicode/cldr",
"unicode/norm",
"unicode/rangetable",
]
pruneopts = ""
revision = "23ae387dee1f90d29a23c0e87ee0b46038fbed0e"
version = "v0.3.3"
[[projects]]
digest = "1:75fb3fcfc73a8c723efde7777b40e8e8ff9babf30d8c56160d01beffea8a95a6"
name = "gopkg.in/inf.v0"
packages = ["."]
pruneopts = ""
revision = "d2d2541c53f18d2a059457998ce2876cc8e67cbf"
version = "v0.9.1"
[[projects]]
branch = "v2"
digest = "1:e56755c5336ff37d20befca76df29097085c85ea1fe58af746e3df6b815decfa"
name = "gopkg.in/mgo.v2"
packages = [
"bson",
"internal/json",
]
pruneopts = ""
revision = "a6b53ec6cb22a3699387a57a161566f9402ee85b"
[[projects]]
branch = "v3"
digest = "1:2e9c4d6def1d36dcd17730e00c06b49a2e97ea5e1e639bcd24fa60fa43e33ad6"
name = "gopkg.in/yaml.v3"
packages = ["."]
pruneopts = ""
revision = "eeeca48fe7764f320e4870d231902bf9c1be2c08"
[[projects]]
digest = "1:a249e341b9bf261a982ab262c69f08223e839302d0a21cfe6e00f2ef2e8695a2"
name = "k8s.io/api"
packages = ["core/v1"]
pruneopts = ""
revision = "f822fed505d4c9dd4eb2c5f4ca2f4c49c19ea394"
version = "v0.18.6"
[[projects]]
digest = "1:74eeecf1188777314a92348555adcb977912d530269130143daf7fc0e80bb512"
name = "k8s.io/apimachinery"
packages = [
"pkg/api/resource",
"pkg/apis/meta/v1",
"pkg/conversion",
"pkg/conversion/queryparams",
"pkg/fields",
"pkg/labels",
"pkg/runtime",
"pkg/runtime/schema",
"pkg/selection",
"pkg/types",
"pkg/util/errors",
"pkg/util/intstr",
"pkg/util/json",
"pkg/util/naming",
"pkg/util/net",
"pkg/util/runtime",
"pkg/util/sets",
"pkg/util/validation",
"pkg/util/validation/field",
"pkg/watch",
"third_party/forked/golang/reflect",
]
pruneopts = ""
revision = "fbe88689c3c2735e949f67884a4f58cb99379159"
version = "v0.17.9"
[[projects]]
digest = "1:5ad0a3bf1b13f9b8bd99f4079c635cb813d87b70db65b98fe5503762e1d39735"
name = "k8s.io/klog"
packages = ["."]
pruneopts = ""
revision = "b5c3182dac44f851522e32c97c86ac32755c296d"
version = "v2.3.0"
[solve-meta]
analyzer-name = "dep"
analyzer-version = 1
input-imports = [
"github.com/Masterminds/semver",
"github.com/alecthomas/kingpin",
"github.com/go-ini/ini",
"github.com/golang/mock/gomock",
"github.com/google/uuid",
"github.com/hashicorp/go-version",
"github.com/howeyc/gopass",
"github.com/lib/pq",
"github.com/mattn/go-shellwords",
"github.com/montanaflynn/stats",
"github.com/pborman/getopt",
"github.com/percona/go-mysql/query",
"github.com/pkg/errors",
"github.com/prometheus/common/log",
"github.com/shirou/gopsutil/process",
"github.com/sirupsen/logrus",
"github.com/stretchr/testify/assert",
"github.com/stretchr/testify/require",
"go.mongodb.org/mongo-driver/bson",
"go.mongodb.org/mongo-driver/bson/primitive",
"go.mongodb.org/mongo-driver/mongo",
"go.mongodb.org/mongo-driver/mongo/options",
"golang.org/x/crypto/ssh/terminal",
"gopkg.in/mgo.v2/bson",
"gopkg.in/mgo.v2/dbtest",
"k8s.io/api/core/v1",
]
solver-name = "gps-cdcl"
solver-version = 1

View File

@@ -1,27 +0,0 @@
[[constraint]]
name = "github.com/Masterminds/semver"
version = "1.4.0"
[[constraint]]
name = "github.com/golang/mock"
version = "1.0.0"
[[constraint]]
branch = "master"
name = "github.com/hashicorp/go-version"
[[constraint]]
branch = "master"
name = "github.com/howeyc/gopass"
[[constraint]]
name = "github.com/montanaflynn/stats"
version = "0.2.0"
[[constraint]]
branch = "master"
name = "github.com/pborman/getopt"
[[constraint]]
name = "github.com/shirou/gopsutil"
version = "2.20.8"

View File

@@ -1307,6 +1307,11 @@ Include the following information in your bug report:
If possible, include debugging output by running the tool with C<PTDEBUG>;
see L<"ENVIRONMENT">.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 DOWNLOADING
Visit L<http://www.percona.com/software/percona-toolkit/> to download the
@@ -1359,6 +1364,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-align 3.3.1
pt-align 3.3.2
=cut

View File

@@ -45,7 +45,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -8571,6 +8571,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -8656,6 +8661,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-archiver 3.3.1
pt-archiver 3.3.2
=cut

View File

@@ -43,7 +43,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -5832,6 +5832,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -5912,6 +5917,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-config-diff 3.3.1
pt-config-diff 3.3.2
=cut

View File

@@ -42,7 +42,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -4675,6 +4675,9 @@ sub main {
$sql =~ s/deadlocks/IF NOT EXISTS $db_tbl/;
PTDEBUG && _d($sql);
$dst->dbh->do($sql);
if ( $EVAL_ERROR ) {
_die("Cannot connect to MySQL: $EVAL_ERROR", 1);
}
}
}
@@ -5621,6 +5624,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -5702,6 +5710,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-deadlock-logger 3.3.1
pt-deadlock-logger 3.3.2
=cut

View File

@@ -38,7 +38,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -5596,6 +5596,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
This tool requires Perl v5.8.0 or newer and the F</proc> filesystem, unless
@@ -5677,6 +5682,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-diskstats 3.3.1
pt-diskstats 3.3.2
=cut

View File

@@ -39,7 +39,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -5685,6 +5685,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -5766,6 +5771,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-duplicate-key-checker 3.3.1
pt-duplicate-key-checker 3.3.2
=cut

View File

@@ -1567,6 +1567,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -1648,6 +1653,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-fifo-split 3.3.1
pt-fifo-split 3.3.2
=cut

View File

@@ -35,7 +35,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -5046,6 +5046,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -5127,6 +5132,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-find 3.3.1
pt-find 3.3.2
=cut

View File

@@ -1565,8 +1565,8 @@ $bal = qr/
my $olc_re = qr/(?:--|#)[^'"\r\n]*(?=[\r\n]|\Z)/; # One-line comments
my $mlc_re = qr#/\*[^!].*?\*/#sm; # But not /*!version */
my $vlc_re = qr#/\*.*?[0-9+].*?\*/#sm; # For SHOW + /*!version */
my $vlc_rf = qr#^(SHOW).*?/\*![0-9+].*?\*/#sm; # Variation for SHOW
my $vlc_re = qr#/\*.*?[0-9]+.*?\*/#sm; # For SHOW + /*!version */
my $vlc_rf = qr#^(?:SHOW).*?/\*![0-9]+(.*?)\*/#sm; # Variation for SHOW
sub new {
@@ -1581,7 +1581,8 @@ sub strip_comments {
$query =~ s/$mlc_re//go;
$query =~ s/$olc_re//go;
if ( $query =~ m/$vlc_rf/i ) { # contains show + version
$query =~ s/$vlc_re//go;
my $qualifier = $1 || '';
$query =~ s/$vlc_re/$qualifier/go;
}
return $query;
}
@@ -1652,9 +1653,15 @@ sub fingerprint {
$query =~ s/\Ause \S+\Z/use ?/i # Abstract the DB in USE
&& return $query;
$query =~ s/\\["']//g; # quoted strings
$query =~ s/".*?"/?/sg; # quoted strings
$query =~ s/'.*?'/?/sg; # quoted strings
$query =~ s/([^\\])(\\')/$1/sg;
$query =~ s/([^\\])(\\")/$1/sg;
$query =~ s/\\\\//sg;
$query =~ s/\\'//sg;
$query =~ s/\\"//sg;
$query =~ s/([^\\])(".*?[^\\]?")/$1?/sg;
$query =~ s/([^\\])('.*?[^\\]?')/$1?/sg;
$query =~ s/\bfalse\b|\btrue\b/?/isg; # boolean values
if ( $self->{match_md5_checksums} ) {
$query =~ s/([._-])[a-f0-9]{32}/$1?/g;
@@ -1704,6 +1711,13 @@ sub distill_verbs {
$query =~ m/\A\s*UNLOCK TABLES/i && return "UNLOCK";
$query =~ m/\A\s*xa\s+(\S+)/i && return "XA_$1";
if ( $query =~ m/\A\s*LOAD/i ) {
my ($tbl) = $query =~ m/INTO TABLE\s+(\S+)/i;
$tbl ||= '';
$tbl =~ s/`//g;
return "LOAD DATA $tbl";
}
if ( $query =~ m/\Aadministrator command:/ ) {
$query =~ s/administrator command:/ADMIN/;
$query = uc $query;
@@ -1716,7 +1730,7 @@ sub distill_verbs {
PTDEBUG && _d($query);
$query = uc $query;
$query =~ s/\s+(?:GLOBAL|SESSION|FULL|STORAGE|ENGINE)\b/ /g;
$query =~ s/\s+(?:SESSION|FULL|STORAGE|ENGINE)\b/ /g;
$query =~ s/\s+COUNT[^)]+\)//g;
$query =~ s/\s+(?:FOR|FROM|LIKE|WHERE|LIMIT|IN)\b.+//ms;
@@ -1731,6 +1745,7 @@ sub distill_verbs {
eval $QueryParser::tbl_ident;
my ( $dds ) = $query =~ /^\s*($QueryParser::data_def_stmts)\b/i;
if ( $dds) {
$query =~ s/\s+IF(?:\s+NOT)?\s+EXISTS/ /i;
my ( $obj ) = $query =~ m/$dds.+(DATABASE|TABLE)\b/i;
$obj = uc $obj if $obj;
PTDEBUG && _d('Data def statment:', $dds, 'obj:', $obj);
@@ -1797,6 +1812,9 @@ sub distill {
map { $verbs =~ s/$_/$alias_for{$_}/ } keys %alias_for;
$query = $verbs;
}
elsif ( $verbs && $verbs =~ m/^LOAD DATA/ ) {
return $verbs;
}
else {
my @tables = $self->__distill_tables($query, $table, %args);
$query = join(q{ }, $verbs, @tables);
@@ -2159,6 +2177,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -2239,6 +2262,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-fingerprint 3.3.1
pt-fingerprint 3.3.2
=cut

View File

@@ -37,7 +37,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -4608,6 +4608,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -4688,6 +4693,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-fk-error-logger 3.3.1
pt-fk-error-logger 3.3.2
=cut

View File

@@ -44,7 +44,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -5945,6 +5945,9 @@ sub main {
my $dsn = @ARGV ? $dp->parse(shift @ARGV, $dsn_defaults)
: $dsn_defaults;
my $dbh = $dp->get_dbh($dp->get_cxn_params($dsn), {AutoCommit=>1});
if ($EVAL_ERROR) {
_die("Cannot connect to MySQL: $EVAL_ERROR", 1);
}
$dbh->{InactiveDestroy} = 1; # Don't disconnect on fork
$dbh->{FetchHashKeyName} = 'NAME_lc';
@@ -7303,6 +7306,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -7386,6 +7394,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-heartbeat 3.3.1
pt-heartbeat 3.3.2
=cut

View File

@@ -45,7 +45,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -2520,9 +2520,13 @@ sub fingerprint {
$query =~ s/\Ause \S+\Z/use ?/i # Abstract the DB in USE
&& return $query;
$query =~ s/\\["']//g; # quoted strings
$query =~ s/".*?"/?/sg; # quoted strings
$query =~ s/'.*?'/?/sg; # quoted strings
$query =~ s/([^\\])(\\')/$1/sg;
$query =~ s/([^\\])(\\")/$1/sg;
$query =~ s/\\\\//sg;
$query =~ s/\\'//sg;
$query =~ s/\\"//sg;
$query =~ s/([^\\])(".*?[^\\]?")/$1?/sg;
$query =~ s/([^\\])('.*?[^\\]?')/$1?/sg;
$query =~ s/\bfalse\b|\btrue\b/?/isg; # boolean values
@@ -7615,6 +7619,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -7696,6 +7705,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-index-usage 3.3.1
pt-index-usage 3.3.2
=cut

View File

@@ -1075,6 +1075,11 @@ Include the following information in your bug report:
If possible, include debugging output by running the tool with C<PTDEBUG>;
see L<"ENVIRONMENT">.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 DOWNLOADING
Visit L<http://www.percona.com/software/percona-toolkit/> to download the
@@ -1127,7 +1132,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-ioprofile 3.3.1
pt-ioprofile 3.3.2
=cut

View File

@@ -47,7 +47,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -4911,9 +4911,13 @@ sub fingerprint {
$query =~ s/\Ause \S+\Z/use ?/i # Abstract the DB in USE
&& return $query;
$query =~ s/\\["']//g; # quoted strings
$query =~ s/".*?"/?/sg; # quoted strings
$query =~ s/'.*?'/?/sg; # quoted strings
$query =~ s/([^\\])(\\')/$1/sg;
$query =~ s/([^\\])(\\")/$1/sg;
$query =~ s/\\\\//sg;
$query =~ s/\\'//sg;
$query =~ s/\\"//sg;
$query =~ s/([^\\])(".*?[^\\]?")/$1?/sg;
$query =~ s/([^\\])('.*?[^\\]?')/$1?/sg;
$query =~ s/\bfalse\b|\btrue\b/?/isg; # boolean values
@@ -8486,6 +8490,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -8567,6 +8576,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-kill 3.3.1
pt-kill 3.3.2
=cut

View File

@@ -752,6 +752,11 @@ Include the following information in your bug report:
If possible, include debugging output by running the tool with C<PTDEBUG>;
see L<"ENVIRONMENT">.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 DOWNLOADING
Visit L<http://www.percona.com/software/percona-toolkit/> to download the
@@ -804,7 +809,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-mext 3.3.1
pt-mext 3.3.2
=cut

View File

@@ -3237,6 +3237,11 @@ Include the following information in your bug report:
If possible, include debugging output by running the tool with C<PTDEBUG>;
see L<"ENVIRONMENT">.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 DOWNLOADING
Visit L<http://www.percona.com/software/percona-toolkit/> to download the
@@ -3289,7 +3294,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-mysql-summary 3.3.1
pt-mysql-summary 3.3.2
=cut

View File

@@ -56,7 +56,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -10110,7 +10110,7 @@ sub main {
}
}
if ($vp->cmp('8.0') > -1 && $vp->flavor() !~ m/maria/i && $alter_fk_method eq 'drop_swap') {
if (($vp->cmp('8.0') >= 0 && $vp->cmp('8.0.14') <= 0) && $vp->flavor() !~ m/maria/i && $alter_fk_method eq 'drop_swap') {
my $msg = "--alter-foreign-keys-method=drop_swap doesn't work with MySQL 8.0+\n".
"See https://bugs.mysql.com/bug.php?id=89441";
_die($msg, INVALID_PARAMETERS);
@@ -13345,6 +13345,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 EXIT STATUS
INVALID_PARAMETERS = 1
@@ -13464,6 +13469,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-online-schema-change 3.3.1
pt-online-schema-change 3.3.2
=cut

View File

@@ -844,6 +844,11 @@ Include the following information in your bug report:
If possible, include debugging output by running the tool with C<PTDEBUG>;
see L<"ENVIRONMENT">.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 DOWNLOADING
Visit L<http://www.percona.com/software/percona-toolkit/> to download the
@@ -896,7 +901,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-pmp 3.3.1
pt-pmp 3.3.2
=cut

View File

@@ -64,7 +64,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -2945,9 +2945,13 @@ sub fingerprint {
$query =~ s/\Ause \S+\Z/use ?/i # Abstract the DB in USE
&& return $query;
$query =~ s/\\["']//g; # quoted strings
$query =~ s/".*?"/?/sg; # quoted strings
$query =~ s/'.*?'/?/sg; # quoted strings
$query =~ s/([^\\])(\\')/$1/sg;
$query =~ s/([^\\])(\\")/$1/sg;
$query =~ s/\\\\//sg;
$query =~ s/\\'//sg;
$query =~ s/\\"//sg;
$query =~ s/([^\\])(".*?[^\\]?")/$1?/sg;
$query =~ s/([^\\])('.*?[^\\]?')/$1?/sg;
$query =~ s/\bfalse\b|\btrue\b/?/isg; # boolean values
@@ -13281,6 +13285,9 @@ sub main {
DSNParser => $dp,
opts => { AutoCommit => 1 },
);
if ($EVAL_ERROR) {
die ("Cannot connect to the explain database: $EVAL_ERROR")
}
$ep_dbh->{InactiveDestroy} = 1; # Don't die on fork().
}
@@ -13303,6 +13310,10 @@ sub main {
DSNParser => $dp,
opts => { AutoCommit => 1 },
);
if ($EVAL_ERROR) {
die ("Cannot connect to the review database: $EVAL_ERROR")
}
$qv_dbh->{InactiveDestroy} = 1; # Don't die on fork().
my @db_tbl = @{$review_dsn}{qw(D t)};
@@ -13347,6 +13358,9 @@ sub main {
DSNParser => $dp,
opts => { AutoCommit => 1 },
);
if ($EVAL_ERROR) {
die ("Cannot connect to the history database: $EVAL_ERROR")
}
$qh_dbh->{InactiveDestroy} = 1; # Don't die on fork().
my @hdb_tbl = @{$history_dsn}{qw(D t)};
@@ -16749,6 +16763,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -16958,6 +16977,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-query-digest 3.3.1
pt-query-digest 3.3.2
=cut

View File

@@ -2532,6 +2532,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -2613,6 +2618,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-show-grants 3.3.1
pt-show-grants 3.3.2
=cut

View File

@@ -1193,6 +1193,11 @@ Include the following information in your bug report:
If possible, include debugging output by running the tool with C<PTDEBUG>;
see L<"ENVIRONMENT">.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 DOWNLOADING
Visit L<http://www.percona.com/software/percona-toolkit/> to download the
@@ -1245,7 +1250,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-sift 3.3.1
pt-sift 3.3.2
=cut

View File

@@ -40,7 +40,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -4907,6 +4907,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -4988,6 +4993,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-slave-delay 3.3.1
pt-slave-delay 3.3.2
=cut

View File

@@ -4442,6 +4442,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -4523,6 +4528,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-slave-find 3.3.1
pt-slave-find 3.3.2
=cut

View File

@@ -41,7 +41,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -6078,6 +6078,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -6159,6 +6164,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-slave-restart 3.3.1
pt-slave-restart 3.3.2
=cut

View File

@@ -2367,6 +2367,11 @@ Include the following information in your bug report:
If possible, include debugging output by running the tool with C<PTDEBUG>;
see L<"ENVIRONMENT">.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 DOWNLOADING
Visit L<http://www.percona.com/software/percona-toolkit/> to download the
@@ -2420,7 +2425,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-stalk 3.3.1
pt-stalk 3.3.2
=cut

View File

@@ -1514,7 +1514,8 @@ parse_dmidecode_mem_devices () { local PTFUNCNAME=parse_dmidecode_mem_devices;
-e 's/>/}/g' \
-e 's/[ \t]*\n/\n/g' \
"${file}" \
| awk -F: '/Size|Type|Form.Factor|Type.Detail|^[\t ]+Locator/{printf("|%s", $2)}/^[\t ]+Speed/{print "|" $2}' \
| awk -F: '/Size|Type|Form.Factor|Type.Detail|^[\t ]+Locator|^[\t ]+Speed/{printf("|%s", $2)}/^$/{print}' \
| sed '/^$/d' \
| sed -e 's/No Module Installed/{EMPTY}/' \
| sort \
| awk -F'|' '{printf(" %-9s %-8s %-17s %-13s %-13s %-8s\n", $4, $2, $7, $3, $5, $6);}'
@@ -2671,6 +2672,11 @@ Include the following information in your bug report:
If possible, include debugging output by running the tool with C<PTDEBUG>;
see L<"ENVIRONMENT">.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 DOWNLOADING
Visit L<http://www.percona.com/software/percona-toolkit/> to download the
@@ -2723,7 +2729,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-summary 3.3.1
pt-summary 3.3.2
=cut

View File

@@ -58,7 +58,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -14097,6 +14097,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -14183,6 +14188,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-table-checksum 3.3.1
pt-table-checksum 3.3.2
=cut

View File

@@ -55,7 +55,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -12951,6 +12951,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -13084,6 +13089,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-table-sync 3.3.1
pt-table-sync 3.3.2
=cut

View File

@@ -2946,9 +2946,13 @@ sub fingerprint {
$query =~ s/\Ause \S+\Z/use ?/i # Abstract the DB in USE
&& return $query;
$query =~ s/\\["']//g; # quoted strings
$query =~ s/".*?"/?/sg; # quoted strings
$query =~ s/'.*?'/?/sg; # quoted strings
$query =~ s/([^\\])(\\')/$1/sg;
$query =~ s/([^\\])(\\")/$1/sg;
$query =~ s/\\\\//sg;
$query =~ s/\\'//sg;
$query =~ s/\\"//sg;
$query =~ s/([^\\])(".*?[^\\]?")/$1?/sg;
$query =~ s/([^\\])('.*?[^\\]?')/$1?/sg;
$query =~ s/\bfalse\b|\btrue\b/?/isg; # boolean values
@@ -8430,6 +8434,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -8510,6 +8519,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-table-usage 3.3.1
pt-table-usage 3.3.2
=cut

View File

@@ -61,7 +61,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -4818,9 +4818,13 @@ sub fingerprint {
$query =~ s/\Ause \S+\Z/use ?/i # Abstract the DB in USE
&& return $query;
$query =~ s/\\["']//g; # quoted strings
$query =~ s/".*?"/?/sg; # quoted strings
$query =~ s/'.*?'/?/sg; # quoted strings
$query =~ s/([^\\])(\\')/$1/sg;
$query =~ s/([^\\])(\\")/$1/sg;
$query =~ s/\\\\//sg;
$query =~ s/\\'//sg;
$query =~ s/\\"//sg;
$query =~ s/([^\\])(".*?[^\\]?")/$1?/sg;
$query =~ s/([^\\])('.*?[^\\]?')/$1?/sg;
$query =~ s/\bfalse\b|\btrue\b/?/isg; # boolean values
@@ -11363,6 +11367,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -11444,6 +11453,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-upgrade 3.3.1
pt-upgrade 3.3.2
=cut

View File

@@ -44,7 +44,7 @@ BEGIN {
{
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';
@@ -6177,6 +6177,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -6257,6 +6262,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-variable-advisor 3.3.1
pt-variable-advisor 3.3.2
=cut

View File

@@ -3222,6 +3222,11 @@ To enable debugging and capture all output to a file, run the tool like:
Be careful: debugging output is voluminous and can generate several megabytes
of output.
=head1 ATTENTION
Using <PTDEBUG> might expose passwords. When debug is enabled, all command line
parameters are shown in the output.
=head1 SYSTEM REQUIREMENTS
You need Perl, DBI, DBD::mysql, and some core packages that ought to be
@@ -3303,6 +3308,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA.
=head1 VERSION
pt-visual-explain 3.3.1
pt-visual-explain 3.3.2
=cut

View File

@@ -4,21 +4,6 @@
Installing Percona Toolkit
==========================
Percona provides packages for most popular 64-bit Linux distributions:
* Debian 7 ("wheezy")
* Debian 8 ("jessie")
* Ubuntu 14.04 LTS (Trusty Tahr)
* Ubuntu 16.04 LTS (Xenial Xerus)
* Ubuntu 16.10 (Yakkety Yak)
* Ubuntu 17.04 (Zesty Zapus)
* Red Hat Enterprise Linux or CentOS 6 (Santiago)
* Red Hat Enterprise Linux or CentOS 7 (Maipo)
.. note:: Percona Toolkit should work on other DEB-based and RPM-based systems
(for example, Oracle Linux and Amazon Linux AMI),
but it is tested only on those listed above.
It is recommended to install Percona software from official repositories:
1. Configure Percona repositories as described in
@@ -36,8 +21,8 @@ It is recommended to install Percona software from official repositories:
sudo yum install percona-toolkit
.. rubric:: Generating an instance UUID for statistics
During the installating process, the percona-toolkit installer records a unique
During the installation process, the percona-toolkit installer records a unique
identifier specific to the given percona-toolkit instance. This ID is a the
product UUID stored in |product-uuid|. The installer copies the product_uuid to
|toolkit-uuid|.
@@ -48,7 +33,7 @@ percona-toolkit. Note that no other information is gathered for this purpose.
In cases when the installer is not able to read the contents of
|product-uuid|, a random UUID is generated. A random UUID is
also generated if percona-toolkit is run from the binary in the *tar.gz* file.
Alternative Install Methods
===========================

54
go.mod
View File

@@ -1,20 +1,15 @@
module github.com/percona/percona-toolkit
go 1.14
go 1.17
require (
github.com/Masterminds/semver v1.4.2
github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 // indirect
github.com/alecthomas/kingpin v2.2.6+incompatible
github.com/go-ini/ini v1.46.0
github.com/go-ole/go-ole v1.2.4 // indirect
github.com/golang/mock v1.3.1-0.20190508161146-9fa652df1129
github.com/golang/snappy v0.0.2-0.20190904063534-ff6b7dc882cf // indirect
github.com/google/go-cmp v0.5.2 // indirect
github.com/google/uuid v1.1.2
github.com/google/uuid v1.3.0
github.com/hashicorp/go-version v1.2.1-0.20190424083514-192140e6f3e6
github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c
github.com/klauspost/compress v1.10.10 // indirect
github.com/lib/pq v1.2.0
github.com/mattn/go-shellwords v1.0.6
github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe
@@ -25,15 +20,42 @@ require (
github.com/shirou/gopsutil v2.20.8+incompatible
github.com/sirupsen/logrus v1.6.0
github.com/stretchr/testify v1.6.1
github.com/xdg/stringprep v1.0.1-0.20180714160509-73f8eece6fdc // indirect
go.mongodb.org/mongo-driver v1.3.4
go.mongodb.org/mongo-driver v1.7.1
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9 // indirect
golang.org/x/tools v0.0.0-20201023174141-c8cfbd0f21e6 // indirect
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
gopkg.in/ini.v1 v1.61.0 // indirect
gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22
gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776 // indirect
k8s.io/api v0.20.1
mvdan.cc/gofumpt v0.0.0-20200927160801-5bfeb2e70dd6 // indirect
k8s.io/api v0.18.6
)
require (
github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 // indirect
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
github.com/alecthomas/units v0.0.0-20210208195552-ff826a37aa15 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/go-ole/go-ole v1.2.4 // indirect
github.com/go-stack/stack v1.8.0 // indirect
github.com/gogo/protobuf v1.3.1 // indirect
github.com/golang/snappy v0.0.2-0.20190904063534-ff6b7dc882cf // indirect
github.com/google/gofuzz v1.1.0 // indirect
github.com/json-iterator/go v1.1.10 // indirect
github.com/klauspost/compress v1.10.10 // indirect
github.com/konsorten/go-windows-terminal-sequences v1.0.3 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.1 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/xdg-go/pbkdf2 v1.0.0 // indirect
github.com/xdg-go/scram v1.0.2 // indirect
github.com/xdg-go/stringprep v1.0.2 // indirect
github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d // indirect
golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d // indirect
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e // indirect
golang.org/x/sys v0.0.0-20210423082822-04245dca01da // indirect
golang.org/x/text v0.3.6 // indirect
gopkg.in/alecthomas/kingpin.v2 v2.2.6 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/ini.v1 v1.62.0 // indirect
gopkg.in/yaml.v2 v2.3.0 // indirect
gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776 // indirect
k8s.io/apimachinery v0.18.6 // indirect
k8s.io/klog v1.0.0 // indirect
sigs.k8s.io/structured-merge-diff/v3 v3.0.0 // indirect
)

158
go.sum
View File

@@ -5,8 +5,8 @@ github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go
github.com/Masterminds/semver v1.4.2 h1:WBLTQ37jOCzSLtXNdoo8bNM8876KhNqOKvrlGITgsTc=
github.com/Masterminds/semver v1.4.2/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y=
github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ=
github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo=
github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI=
github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 h1:fLjPD/aNc3UIOA6tDi6QXUemppXK3P9BI7mr2hd6gx8=
@@ -19,17 +19,16 @@ github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuy
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 h1:JYp7IbQjafoB+tBA3gMyHYHrpOtNuDiK/uB5uXxq5wM=
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4 h1:Hs82Z41s6SdL1CELW+XaDYmOH4hkBN4/N9og/AsOv7E=
github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d h1:UQZhZ2O0vMHr2cI+DC1Mbh0TJxzA3RcLoMsFw+aXw7E=
github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho=
github.com/alecthomas/units v0.0.0-20210208195552-ff826a37aa15 h1:AUNCr9CiJuwrRYS3XieqF+Z9B9gNxo/eANAJCF2eiN4=
github.com/alecthomas/units v0.0.0-20210208195552-ff826a37aa15/go.mod h1:OMCwj8VM1Kc9e19TLln2VL61YJF0x1XFtfdL4JdbSyE=
github.com/apache/thrift v0.12.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ=
github.com/apache/thrift v0.13.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ=
github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o=
github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY=
github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
github.com/aryann/difflib v0.0.0-20170710044230-e206f873d14a/go.mod h1:DAHtR1m6lCRdSC2Tm3DSWRPvIPr6xNKyeHdqDQSQT+A=
github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY=
github.com/aws/aws-lambda-go v1.13.3/go.mod h1:4UKl9IzQMoD+QF79YdCuzCwp8VbmG4VAQwij/eHl5CU=
github.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g=
@@ -55,7 +54,6 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ=
github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM=
github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE=
github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
github.com/eapache/go-resiliency v1.1.0/go.mod h1:kFI+JgMyC7bLPUVY133qvEBtVayf5mFgVsvEsIPBvNs=
github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1:+020luEh2TKB4/GOp8oxxtq0Daoen/Cii55CzbTV6DU=
@@ -66,12 +64,11 @@ github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb
github.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g=
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
github.com/evanphx/json-patch v4.2.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
github.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db/go.mod h1:7dvUGVsVBjqR7JHJk0brhHOZYGmfBYOrK0ZhYMEtBr4=
github.com/franela/goreq v0.0.0-20171204163338-bcd34c9993f8/go.mod h1:ZhphrRTfi2rbfLwlschooIH4+wKKDR4Pdxhh+TRoA20=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
github.com/go-ini/ini v1.46.0 h1:hDJFfs/9f75875scvqLkhNB5Jz5/DybKEOZ5MLF+ng4=
@@ -83,17 +80,12 @@ github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
github.com/go-logr/logr v0.2.0 h1:QvGt2nLcHH0WK9orKa+ppBPAxREcH364nPUedEpK0TY=
github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU=
github.com/go-ole/go-ole v1.2.4 h1:nNBDSCOigTSiarFpYE9J/KtEA1IOW4CNeqT9TQDqCxI=
github.com/go-ole/go-ole v1.2.4/go.mod h1:XCwSNxSkXRo4vlyPy93sltvi/qJq0jqQhjqQNIwKuxM=
github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg=
github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=
github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc=
github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8=
github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo=
github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0=
github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg=
github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc=
github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I=
github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
github.com/go-stack/stack v1.8.0 h1:5SgMzNM5HxrEjV0ww2lTmX6E2Izsfxas4+YHWRs3Lsk=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
@@ -130,35 +122,29 @@ github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXP
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
github.com/golang/mock v1.3.1-0.20190508161146-9fa652df1129 h1:tT8iWCYw4uOem71yYA3htfH+LNopJvcqZQshm56G5L4=
github.com/golang/mock v1.3.1-0.20190508161146-9fa652df1129/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y=
github.com/golang/protobuf v0.0.0-20161109072736-4bd1920723d7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw=
github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA=
github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=
github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=
github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=
github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8=
github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.2-0.20190904063534-ff6b7dc882cf h1:gFVkHXmVAhEbxZVDln5V9GKrLaluNoFHDbrZwAWZgws=
github.com/golang/snappy v0.0.2-0.20190904063534-ff6b7dc882cf/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
github.com/google/go-cmp v0.2.0 h1:+dTQ8DZQJz0Mb/HjFlkptS1FeQ4cWSnN941F8aEG4SQ=
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM=
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
@@ -166,11 +152,11 @@ github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g=
github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/uuid v1.1.1 h1:Gkbcsh/GbpXz7lPftLA3P6TYMwjCLYm83jiFQZF/3gY=
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/uuid v1.1.2 h1:EVhdT+1Kseyi1/pUmXKaFxYsDNy9RQYkMWRH68J/W7Y=
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg=
github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I=
github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/googleapis/gnostic v0.0.0-20170729233727-0c5108395e2d/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY=
github.com/googleapis/gnostic v0.1.0/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY=
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 h1:EGx4pi6eqNxGaHF6qqu48+N2wcFQ5qg5FXgOdqsJ5d8=
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg=
@@ -230,16 +216,13 @@ github.com/klauspost/compress v1.9.5/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0
github.com/klauspost/compress v1.10.10 h1:a/y8CglcM7gLGYmlbP/stPE5sR3hbhFRUjCBfd/0B3I=
github.com/klauspost/compress v1.10.10/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/konsorten/go-windows-terminal-sequences v1.0.2 h1:DB17ag19krx9CFsz4o3enTrPXyIXCl+2iCXH/aMAp9s=
github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/konsorten/go-windows-terminal-sequences v1.0.3 h1:CE8S1cTafDpPvMhIxNJKvHsGVBgn1xWYf1NbHQhywc8=
github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/lib/pq v1.2.0 h1:LXpIM/LZ5xGFhOpXAQUIMM1HdyqzVYM13zNdjCEEcA0=
@@ -247,8 +230,7 @@ github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20190605223551-bc2310a04743/go.mod h1:qklhhLq1aX+mtWk9cPHPzaBjWImj5ULL6C7HFJtXQMM=
github.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0UBX0ZE6WURAspgAczcDHrL4=
github.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ=
github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE=
github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0=
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
@@ -309,7 +291,7 @@ github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FI
github.com/pborman/getopt v0.0.0-20190409184431-ee0cd42419d3 h1:YtFkrqsMEj7YqpIhRteVxJxCeC3jJBieuLr0d4C4rSA=
github.com/pborman/getopt v0.0.0-20190409184431-ee0cd42419d3/go.mod h1:85jBQOZwpVEaDAr341tbn15RS4fCAsIst0qp7i8ex1o=
github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k=
github.com/pelletier/go-toml v1.4.0/go.mod h1:PN7xzY2wHTK0K9p34ErDQMlFxa51Fk0OUruD3k1mMwo=
github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE=
github.com/percona/go-mysql v0.0.0-20190903141930-197f4ad8db8d h1:ZkztfR4jYDnkFQtZfwMVm9z7wkK/WiCXRQ7l1CB1/1M=
github.com/percona/go-mysql v0.0.0-20190903141930-197f4ad8db8d/go.mod h1:/SGLf9OMxlnK6jq4mkFiImBcJXXk5jwD+lDrwDaGXcw=
github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac=
@@ -350,7 +332,6 @@ github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6So
github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc=
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts=
github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E=
@@ -361,7 +342,6 @@ github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeV
github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
github.com/sirupsen/logrus v1.4.2 h1:SPIRibHv4MatM3XXNO2BJeFLZwZ2LvZgfQ5+UNI2im4=
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
github.com/sirupsen/logrus v1.6.0 h1:UBcNElsrwanuuMsnGSlYmtmgbb23qDR5dG+6X6Oo89I=
github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=
@@ -375,13 +355,13 @@ github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3
github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw=
github.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw=
github.com/streadway/handy v0.0.0-20190108123426-d5acb3125c2a/go.mod h1:qNTQ5P5JnDBl6z3cMAg/SywNDC5ABu5ApDIw6lUbRmI=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
@@ -392,18 +372,19 @@ github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhV
github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=
github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA=
github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0=
github.com/xdg/scram v0.0.0-20180814205039-7eeb5667e42c h1:u40Z8hqBAAQyv+vATcGgV0YCnDjqSL7/q/JyPhhJSPk=
github.com/xdg/scram v0.0.0-20180814205039-7eeb5667e42c/go.mod h1:lB8K/P019DLNhemzwFU4jHLhdvlE6uDZjXFejJXr49I=
github.com/xdg/stringprep v0.0.0-20180714160509-73f8eece6fdc/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y=
github.com/xdg/stringprep v1.0.1-0.20180714160509-73f8eece6fdc h1:vIp1tjhVogU0yBy7w96P027ewvNPeH6gzuNcoc+NReU=
github.com/xdg/stringprep v1.0.1-0.20180714160509-73f8eece6fdc/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y=
github.com/xdg-go/pbkdf2 v1.0.0 h1:Su7DPu48wXMwC3bs7MCNG+z4FhcyEuz5dlvchbq0B0c=
github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI=
github.com/xdg-go/scram v1.0.2 h1:akYIkZ28e6A96dkWNJQu3nmCzH3YfwMPQExUYDaRv7w=
github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs=
github.com/xdg-go/stringprep v1.0.2 h1:6iq84/ryjjeRmMJwxutI51F2GIPlP5BfTvXHeYjyhBc=
github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM=
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU=
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d h1:splanxYIlg+5LfHAM6xpdFEAYOk8iySO56hMFq6uLyA=
github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA=
go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU=
go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg=
go.mongodb.org/mongo-driver v1.3.4 h1:zs/dKNwX0gYUtzwrN9lLiR15hCO0nDwQj5xXx+vjCdE=
go.mongodb.org/mongo-driver v1.3.4/go.mod h1:MSWZXKOynuguX+JSvwP8i+58jYCXxbia8HS3gZBapIE=
go.mongodb.org/mongo-driver v1.7.1 h1:jwqTeEM3x6L9xDXrCxN0Hbg7vdGfPBOTIkr0+/LYZDA=
go.mongodb.org/mongo-driver v1.7.1/go.mod h1:Q4oFMbo1+MSNqICAdYMlC/zSTrwCogR4R8NzkI+yfU8=
go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=
go.opencensus.io v0.20.2/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=
go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
@@ -419,10 +400,9 @@ golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnf
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE=
golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190530122614-20be4c3c3ed5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 h1:psW17arqaxU48Z5kZ0CQnkZWQJsqcURM6tKiBApRjXI=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
@@ -433,8 +413,7 @@ golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHl
golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc=
golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -451,12 +430,10 @@ golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR
golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.0.0-20201110031124-69a78807bb2b h1:uwuIcX0g4Yl1NC5XAz37xsr2lTtcqevgzYNVt49waME=
golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d h1:20cMwl2fHAzkJMEA+8J4JgqBQcQGzbisXo31MIeenXI=
golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -464,12 +441,10 @@ golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJ
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e h1:vcxGaoTs7kV8m5Np9uUNQin4BrLOthgV7252N8V+FwY=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9 h1:SQFwaSi55rU7vdNs9Yr0Z324VNlrF+0wMqRXT4St8ck=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20170830134202-bb24a47a89ea/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -485,31 +460,30 @@ golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191220142924-d4481acd189f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f h1:+Nyd8tzPX9R7BWHguqsrbFdRx3WQ/1ib8I44HXV5yTA=
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201112073958-5cba982894dd h1:5CtCZbICpIOFdgO940moixOPjc0178IU44m4EjOO5IY=
golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da h1:b3NXsE2LusjYGGjL5bxEVZZORm/YEFFrWFjR8eFrw/c=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs=
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.4 h1:0YWbFKbhXG/wIiuHDSKpS0Iy7FSA+u45VtBMfQcFTTc=
golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6 h1:aRYxNxv6iGQlyVaZmk6ZgYEDa+Jg18DxebPSrd6bg1M=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
@@ -522,22 +496,14 @@ golang.org/x/tools v0.0.0-20190420181800-aa740d480789/go.mod h1:LCzVGOaR6xXOjkQ3
golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200103221440-774c71fcf114/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200731060945-b5fad4ed8dd6 h1:qKpj8TpV+LEhel7H/fR788J+KvhWZ3o3V6N2fU/iuLU=
golang.org/x/tools v0.0.0-20200731060945-b5fad4ed8dd6/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=
golang.org/x/tools v0.0.0-20201023174141-c8cfbd0f21e6 h1:rbvTkL9AkFts1cgI78+gG6Yu1pwaqX6hjSJAatB78E4=
golang.org/x/tools v0.0.0-20201023174141-c8cfbd0f21e6/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/api v0.3.1/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
@@ -547,7 +513,6 @@ google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRn
google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=
google.golang.org/genproto v0.0.0-20190530194941-fb225487d101/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s=
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo=
google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs=
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM=
@@ -557,20 +522,15 @@ google.golang.org/grpc v1.22.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyac
google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=
google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c=
gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc=
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo=
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
@@ -580,8 +540,8 @@ gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMy
gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o=
gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
gopkg.in/ini.v1 v1.61.0 h1:LBCdW4FmFYL4s/vDZD1RQYX7oAR6IjujCYgMdbHBR10=
gopkg.in/ini.v1 v1.61.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
gopkg.in/ini.v1 v1.62.0 h1:duBzk771uxoUuOlyRLkHsygud9+5lrlGjdFBb4mSKDU=
gopkg.in/ini.v1 v1.62.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22 h1:VpOs+IwYnYBaFnrNAeB8UUWtL3vEUnzSCL1nVjPhqrw=
gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA=
gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo=
@@ -602,19 +562,19 @@ honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
k8s.io/api v0.20.1 h1:ud1c3W3YNzGd6ABJlbFfKXBKXO+1KdGfcgGGNgFR03E=
k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo=
k8s.io/apimachinery v0.20.1 h1:LAhz8pKbgR8tUwn7boK+b2HZdt7MiTu2mkYtFMUjTRQ=
k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
mvdan.cc/gofumpt v0.0.0-20200927160801-5bfeb2e70dd6 h1:z+/YqapuV7VZPvBb3GYmuEJbA88M3PFUxaHilHYVCpQ=
mvdan.cc/gofumpt v0.0.0-20200927160801-5bfeb2e70dd6/go.mod h1:bzrjFmaD6+xqohD3KYP0H2FEuxknnBmyyOxdhLdaIws=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
k8s.io/api v0.18.6 h1:osqrAXbOQjkKIWDTjrqxWQ3w0GkKb1KA1XkUGHHYpeE=
k8s.io/api v0.18.6/go.mod h1:eeyxr+cwCjMdLAmr2W3RyDI0VvTawSg/3RFFBEnmZGI=
k8s.io/apimachinery v0.18.6 h1:RtFHnfGNfd1N0LeSrKCUznz5xtUP1elRGvHJbL3Ntag=
k8s.io/apimachinery v0.18.6/go.mod h1:OaXp26zu/5J7p0f92ASynJa1pZo06YlV9fG7BoWbCko=
k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/klog v0.0.0-20181102134211-b9b56d5dfc92/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk=
k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8=
k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I=
k8s.io/kube-openapi v0.0.0-20200410145947-61e04a5be9a6/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E=
sigs.k8s.io/structured-merge-diff/v3 v3.0.0-20200116222232-67a7b8c61874/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw=
sigs.k8s.io/structured-merge-diff/v3 v3.0.0 h1:dOmIZBMfhcHS09XZkMyUgkq5trg3/jRyJYFZUiaOp8E=
sigs.k8s.io/structured-merge-diff/v3 v3.0.0/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q=
sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc=
sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU=

View File

@@ -18,7 +18,7 @@
# ###########################################################################
package Percona::Toolkit;
our $VERSION = '3.3.1';
our $VERSION = '3.3.2';
use strict;
use warnings FATAL => 'all';

View File

@@ -173,9 +173,17 @@ sub fingerprint {
$query =~ s/\Ause \S+\Z/use ?/i # Abstract the DB in USE
&& return $query;
$query =~ s/\\["']//g; # quoted strings
$query =~ s/".*?"/?/sg; # quoted strings
$query =~ s/'.*?'/?/sg; # quoted strings
# -----------------------------------------------------------
# Remove quoted strings
# -----------------------------------------------------------
$query =~ s/([^\\])(\\')/$1/sg;
$query =~ s/([^\\])(\\")/$1/sg;
$query =~ s/\\\\//sg;
$query =~ s/\\'//sg;
$query =~ s/\\"//sg;
$query =~ s/([^\\])(".*?[^\\]?")/$1?/sg;
$query =~ s/([^\\])('.*?[^\\]?')/$1?/sg;
# -----------------------------------------------------------
$query =~ s/\bfalse\b|\btrue\b/?/isg; # boolean values
@@ -218,8 +226,8 @@ sub fingerprint {
$query =~ s/\blimit \?(?:, ?\?| offset \?)?/limit ?/; # LIMIT
# The following are disabled because of speed issues. Should we try to
# normalize whitespace between and around operators? My gut feeling is no.
# $query =~ s/ , | ,|, /,/g; # Normalize commas
# $query =~ s/ = | =|= /=/g; # Normalize equals
# $query =~ s/ , | ,|, /,/g; # Normalize commas
# $query =~ s/ = | =|= /=/g; # Normalize equals
# $query =~ s# [,=+*/-] ?|[,=+*/-] #+#g; # Normalize operators
# Remove ASC keywords from ORDER BY clause so these queries fingerprint

View File

@@ -3,10 +3,17 @@ help: ## Display this help message.
@grep '^[a-zA-Z]' $(MAKEFILE_LIST) | \
awk -F ':.*?## ' 'NF==2 {printf " %-26s%s\n", $$1, $$2}'
DATE_FMT = +%FT%T%z
ifdef SOURCE_DATE_EPOCH
BUILD_DATE ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)" 2>/dev/null || date -u "$(DATE_FMT)")
else
BUILD_DATE ?= $(shell date "$(DATE_FMT)")
endif
GO := go
pkgs = $(shell find . -type d -name "pt-*" -exec basename {} \;)
VERSION=$(shell git describe --abbrev=0 --tags)
BUILD=$(shell date +%FT%T%z)
BUILD=$(BUILD_DATE)
GOVERSION=$(shell go version | cut --delimiter=" " -f3)
COMMIT=$(shell git rev-list -1 HEAD)
GOUTILSDIR ?= $(GOPATH)/bin
@@ -22,8 +29,8 @@ TEST_PSMDB_VERSION?=4.0
TEST_MONGODB_FLAVOR?=percona/percona-server-mongodb
TEST_MONGODB_ADMIN_USERNAME?=admin
TEST_MONGODB_ADMIN_PASSWORD?=admin123456
TEST_MONGODB_USERNAME?=test
TEST_MONGODB_PASSWORD?=123456
TEST_MONGODB_USERNAME?=
TEST_MONGODB_PASSWORD?=
TEST_MONGODB_STANDALONE_PORT?=27017
@@ -103,9 +110,7 @@ env-up: env ## Start MongoDB docker containers cluster
--detach \
--force-recreate \
--always-recreate-deps \
--renew-anon-volumes \
init
docker/test/init-cluster-wait.sh
--renew-anon-volumes
env-down: env ## Clean-up MongoDB docker containers cluster
docker-compose down -v

View File

@@ -1,219 +1,217 @@
---
version: '3'
services:
standalone:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
environment:
MONGO_INITDB_ROOT_USERNAME: ${TEST_MONGODB_ADMIN_USERNAME}
MONGO_INITDB_ROOT_PASSWORD: ${TEST_MONGODB_ADMIN_PASSWORD}
command: --port=27017
s1-mongo1:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S1_RS} --port=${TEST_MONGODB_S1_PRIMARY_PORT} --shardsvr
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
s1-mongo2:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S1_RS} --port=${TEST_MONGODB_S1_SECONDARY1_PORT} --shardsvr
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
s1-mongo3:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S1_RS} --port=${TEST_MONGODB_S1_SECONDARY2_PORT} --shardsvr
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
s2-mongo1:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S2_RS} --port=${TEST_MONGODB_S2_PRIMARY_PORT} --shardsvr
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
s2-mongo2:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S2_RS} --port=${TEST_MONGODB_S2_SECONDARY1_PORT} --shardsvr
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
s2-mongo3:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S2_RS} --port=${TEST_MONGODB_S2_SECONDARY2_PORT} --shardsvr
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
s3-mongo1:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S3_RS} --port=${TEST_MONGODB_S3_PRIMARY_PORT}
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
s3-mongo2:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S3_RS} --port=${TEST_MONGODB_S3_SECONDARY1_PORT}
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
s3-mongo3:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_S3_RS} --port=${TEST_MONGODB_S3_SECONDARY2_PORT}
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
configsvr1:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --replSet=${TEST_MONGODB_CONFIGSVR_RS} --port=${TEST_MONGODB_CONFIGSVR1_PORT} --configsvr
volumes:
- ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongod.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
# configsvr2:
# network_mode: host
# image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
# command: --replSet=${TEST_MONGODB_CONFIGSVR_RS} --port=${TEST_MONGODB_CONFIGSVR2_PORT} --configsvr
# volumes:
# - ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
# - ./docker/test/mongod.key:/mongod.key:ro
# - ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
# - ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
# configsvr3:
# network_mode: host
# image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
# command: --replSet=${TEST_MONGODB_CONFIGSVR_RS} --port=${TEST_MONGODB_CONFIGSVR3_PORT} --configsvr
# volumes:
# - ./docker/test/entrypoint-mongod.sh:/entrypoint.sh:ro
# - ./docker/test/mongod.key:/mongod.key:ro
# - ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
# - ./docker/test/ssl/mongodb.pem:/mongod.pem:ro
mongos:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
command: --port=${TEST_MONGODB_MONGOS_PORT} --configdb=${TEST_MONGODB_CONFIGSVR_RS}/127.0.0.1:${TEST_MONGODB_CONFIGSVR1_PORT}
volumes:
- ./docker/test/entrypoint-mongos.sh:/entrypoint.sh:ro
- ./docker/test/entrypoint-mongos.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongos.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/mongodb.pem:/mongos.pem:ro
depends_on:
- configsvr1
# - configsvr2
# - configsvr3
postgres9:
image: ${MYSQL_IMAGE:-postgres:9.6}
container_name: go_postgres9_1
ports:
- ${POSTGRE_HOST:-127.0.0.1}:${POSTGRE_96_PORT:-6432}:5432
environment:
- POSTGRES_PASSWORD=root
postgres10:
image: ${POSTGRE_IMAGE:-postgres:10.7}
container_name: go_postgres10_1
ports:
- ${POSTGRE_HOST:-127.0.0.1}:${POSTGRE_10_PORT:-6433}:5432
environment:
- POSTGRES_PASSWORD=root
postgres11:
image: ${POSTGRE_IMAGE:-postgres:11}
container_name: go_postgres11_1
ports:
- ${POSTGRE_HOST:-127.0.0.1}:${POSTGRE_11_PORT:-6434}:5432
environment:
- POSTGRES_PASSWORD=root
postgres12:
image: ${POSTGRE_IMAGE:-postgres:12}
container_name: go_postgres12_1
ports:
- ${POSTGRE_HOST:-127.0.0.1}:${POSTGRE_12_PORT:-6435}:5432
environment:
- POSTGRES_PASSWORD=root
init:
network_mode: host
image: ${TEST_MONGODB_FLAVOR}:${TEST_PSMDB_VERSION}
volumes:
- ./docker/test/init-cluster.sh:/entrypoint.sh:ro
- ./docker/test/init-cluster.sh:/usr/local/bin/docker-entrypoint.sh:ro
- ./docker/test/mongod.key:/mongod.key:ro
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/client.pem:/client.pem:ro
env_file:
- .env
depends_on:
- mongos
- s1-mongo1
- s1-mongo2
- s1-mongo3
- s2-mongo1
- s2-mongo2
- s2-mongo3
- s3-mongo1
- s3-mongo2
- s3-mongo3
- standalone
- postgres9
- postgres10
- postgres11
- postgres12
test:
build:
dockerfile: docker/test/Dockerfile
context: .
args:
- GOLANG_DOCKERHUB_TAG=${GOLANG_DOCKERHUB_TAG}
network_mode: host
env_file:
- .env
volumes:
- ./test-out:/tmp/out
- ./docker/test/ssl/rootCA.crt:/rootCA.crt:ro
- ./docker/test/ssl/client.pem:/client.pem:ro
depends_on:
- mongos
- s1-mongo1
- s1-mongo2
- s1-mongo3
- s2-mongo1
- s2-mongo2
- s2-mongo3
- init
mongo-1-1:
container_name: "mongo-1-1"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_S1_PRIMARY_PORT:-17001}:27017"
command: mongod --replSet rs1 --shardsvr --port 27017 --oplogSize 16
links:
- mongo-1-2:mongo-1-2
- mongo-1-3:mongo-1-3
mongo-1-2:
container_name: "mongo-1-2"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_S1_SECONDARY1_PORT:-17002}:27017"
command: mongod --replSet rs1 --shardsvr --port 27017 --oplogSize 16
mongo-1-3:
container_name: "mongo-1-3"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_S1_SECONDARY2_PORT:-17003}:27017"
command: mongod --replSet rs1 --shardsvr --port 27017 --oplogSize 16
mongo-rs1-setup:
container_name: "mongo-rs1-setup"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
depends_on:
- "mongo-1-1"
- "mongo-1-2"
- "mongo-1-3"
links:
- mongo-1-1:mongo-1-1
- mongo-1-2:mongo-1-2
- mongo-1-3:mongo-1-3
volumes:
- ./docker/scripts:/scripts
environment:
- MONGO1=mongo-1-1
- MONGO2=mongo-1-2
- MONGO3=mongo-1-3
- RS=rs1
entrypoint: [ "/scripts/setup.sh" ]
mongo-2-2:
container_name: "mongo-2-2"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_S2_PRIMARY_PORT:-17004}:27017"
command: mongod --replSet rs2 --shardsvr --port 27017 --oplogSize 16
mongo-2-3:
container_name: "mongo-2-3"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_S2_SECONDARY1_PORT:-17005}:27017"
command: mongod --replSet rs2 --shardsvr --port 27017 --oplogSize 16
mongo-2-1:
container_name: "mongo-2-1"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_S2_SECONDARY2_PORT:-17006}:27017"
command: mongod --replSet rs2 --shardsvr --port 27017 --oplogSize 16
links:
- mongo-2-2:mongo-2-2
- mongo-2-3:mongo-2-3
mongo-rs2-setup:
container_name: "mongo-rs2-setup"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
depends_on:
- "mongo-2-1"
- "mongo-2-2"
- "mongo-2-3"
links:
- mongo-2-1:mongo-2-1
- mongo-2-2:mongo-2-2
- mongo-2-3:mongo-2-3
volumes:
- ./docker/scripts:/scripts
environment:
- MONGO1=mongo-2-1
- MONGO2=mongo-2-2
- MONGO3=mongo-2-3
- RS=rs2
entrypoint: [ "/scripts/setup.sh" ]
# Config servers
mongo-cnf-2:
container_name: "mongo-cnf-2"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_CONFIGSVR1_PORT:-17007}:27017"
command: mongod --dbpath /data/db --replSet cnf-serv --configsvr --port 27017 --oplogSize 16
mongo-cnf-3:
container_name: "mongo-cnf-3"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_CONFIGSVR2_PORT:-17008}:27017"
command: mongod --dbpath /data/db --replSet cnf-serv --configsvr --port 27017 --oplogSize 16
mongo-cnf-1:
container_name: "mongo-cnf-1"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_CONFIGSVR3_PORT:-17009}:27017"
command: mongod --dbpath /data/db --replSet cnf-serv --configsvr --port 27017 --oplogSize 16
links:
- mongo-cnf-2:mongo-cnf-2
- mongo-cnf-3:mongo-cnf-3
mongo-cnf-setup:
container_name: "mongo-cnf-setup"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
depends_on:
- "mongo-cnf-1"
- "mongo-cnf-2"
- "mongo-cnf-3"
links:
- mongo-cnf-1:mongo-cnf-1
- mongo-cnf-2:mongo-cnf-2
- mongo-cnf-3:mongo-cnf-3
volumes:
- ./docker/scripts:/scripts
environment:
- MONGO1=mongo-cnf-1
- MONGO2=mongo-cnf-2
- MONGO3=mongo-cnf-3
- RS=cnf-serv
- PORT=27017
entrypoint: [ "/scripts/setup.sh" ]
mongos:
container_name: "mongos"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_MONGOS_PORT:-17000}:27017"
depends_on:
- "mongo-rs1-setup"
- "mongo-rs2-setup"
- "mongo-cnf-setup"
external_links:
- mongo-cnf-1:mongo-cnf-1
- mongo-cnf-2:mongo-cnf-2
- mongo-cnf-3:mongo-cnf-3
- mongo-1-1:mongo-1-1
- mongo-1-2:mongo-1-2
- mongo-1-3:mongo-1-3
- mongo-2-1:mongo-2-1
- mongo-2-2:mongo-2-2
- mongo-2-3:mongo-2-3
command: mongos --configdb cnf-serv/mongo-cnf-1:27017,mongo-cnf-2:27017,mongo-cnf-3:27017 --port 27017 --bind_ip 0.0.0.0
mongo-shard-setup:
container_name: "mongo-shard-setup"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
depends_on:
- "mongos"
links:
- mongos:mongos
volumes:
- ./docker/scripts:/scripts
environment:
- MONGOS=mongos
- MONGO11=mongo-1-1
- MONGO12=mongo-1-2
- MONGO13=mongo-1-3
- MONGO21=mongo-2-1
- MONGO22=mongo-2-2
- MONGO23=mongo-2-3
- RS1=rs1
- RS2=rs2
- PORT=27017
- PORT1=27017
- PORT2=27017
- PORT3=27017
entrypoint: [ "/scripts/init-shard.sh" ]
restart: on-failure:20
standalone:
container_name: "standalone"
image: ${TEST_MONGODB_IMAGE:-mongo:4.2}
ports:
- "${TEST_MONGODB_STANDALONE_PORT:-27017}:27017"
command: mongod --replSet rs1 --shardsvr --port 27017 --oplogSize 16
postgres9:
image: ${POSTGRE_IMAGE:-postgres:9.6}
container_name: go_postgres9_1
ports:
- ${POSTGRE_HOST:-127.0.0.1}:${POSTGRE_96_PORT:-6432}:5432
environment:
- POSTGRES_PASSWORD=root
postgres10:
image: ${POSTGRE_IMAGE:-postgres:10.7}
container_name: go_postgres10_1
ports:
- ${POSTGRE_HOST:-127.0.0.1}:${POSTGRE_10_PORT:-6433}:5432
environment:
- POSTGRES_PASSWORD=root
postgres11:
image: ${POSTGRE_IMAGE:-postgres:11}
container_name: go_postgres11_1
ports:
- ${POSTGRE_HOST:-127.0.0.1}:${POSTGRE_11_PORT:-6434}:5432
environment:
- POSTGRES_PASSWORD=root
postgres12:
image: ${POSTGRE_IMAGE:-postgres:12}
container_name: go_postgres12_1
ports:
- ${POSTGRE_HOST:-127.0.0.1}:${POSTGRE_12_PORT:-6435}:5432
environment:
- POSTGRES_PASSWORD=root

0
src/go/docker/Dockerfile.common Normal file → Executable file
View File

0
src/go/docker/Dockerfile.release Normal file → Executable file
View File

View File

@@ -0,0 +1,32 @@
#!/bin/bash
mongodb1=`getent hosts ${MONGOS} | awk '{ print $1 }'`
mongodb11=`getent hosts ${MONGO11} | awk '{ print $1 }'`
mongodb12=`getent hosts ${MONGO12} | awk '{ print $1 }'`
mongodb13=`getent hosts ${MONGO13} | awk '{ print $1 }'`
mongodb21=`getent hosts ${MONGO21} | awk '{ print $1 }'`
mongodb22=`getent hosts ${MONGO22} | awk '{ print $1 }'`
mongodb23=`getent hosts ${MONGO23} | awk '{ print $1 }'`
mongodb31=`getent hosts ${MONGO31} | awk '{ print $1 }'`
mongodb32=`getent hosts ${MONGO32} | awk '{ print $1 }'`
mongodb33=`getent hosts ${MONGO33} | awk '{ print $1 }'`
port=${PORT:-27017}
echo "Waiting for startup.."
until mongo --host ${mongodb1}:${port} --eval 'quit(db.runCommand({ ping: 1 }).ok ? 0 : 2)' &>/dev/null; do
printf '.'
sleep 1
done
echo "Started.."
echo init-shard.sh time now: `date +"%T" `
mongo --host ${mongodb1}:${port} <<EOF
sh.addShard( "${RS1}/${mongodb11}:${PORT1},${mongodb12}:${PORT2},${mongodb13}:${PORT3}" );
sh.addShard( "${RS2}/${mongodb21}:${PORT1},${mongodb22}:${PORT2},${mongodb23}:${PORT3}" );
sh.status();
EOF

40
src/go/docker/scripts/setup.sh Executable file
View File

@@ -0,0 +1,40 @@
#!/bin/bash
mongodb1=`getent hosts ${MONGO1} | awk '{ print $1 }'`
mongodb2=`getent hosts ${MONGO2} | awk '{ print $1 }'`
mongodb3=`getent hosts ${MONGO3} | awk '{ print $1 }'`
port=${PORT:-27017}
echo "Waiting for startup.."
until mongo --host ${mongodb1}:${port} --eval 'quit(db.runCommand({ ping: 1 }).ok ? 0 : 2)' &>/dev/null; do
printf '.'
sleep 1
done
echo "Started.."
echo setup.sh time now: `date +"%T" `
mongo --host ${mongodb1}:${port} <<EOF
var cfg = {
"_id": "${RS}",
"protocolVersion": 1,
"members": [
{
"_id": 0,
"host": "${mongodb1}:${port}"
},
{
"_id": 1,
"host": "${mongodb2}:${port}"
},
{
"_id": 2,
"host": "${mongodb3}:${port}"
}
]
};
rs.initiate(cfg, { force: true });
rs.reconfig(cfg, { force: true });
EOF

0
src/go/docker/test/Dockerfile Normal file → Executable file
View File

0
src/go/docker/test/mongod.key Normal file → Executable file
View File

0
src/go/docker/test/ssl/client.pem Normal file → Executable file
View File

0
src/go/docker/test/ssl/mongod.pem Normal file → Executable file
View File

0
src/go/docker/test/ssl/mongodb.pem Normal file → Executable file
View File

0
src/go/docker/test/ssl/rootCA.crt Normal file → Executable file
View File

View File

@@ -38,8 +38,8 @@ const (
envMongoDBStandalonePort = "TEST_MONGODB_STANDALONE_PORT"
//
envMongoDBUser = "TEST_MONGODB_ADMIN_USERNAME"
envMongoDBPassword = "TEST_MONGODB_ADMIN_PASSWORD"
envMongoDBUser = ""
envMongoDBPassword = ""
)
var (
@@ -86,9 +86,9 @@ var (
// MongoDBMongosPort mongos port
MongoDBMongosPort = getEnvDefault(envMongoDBMongosPort, "17000")
// MongoDBUser username for all instances
MongoDBUser = getEnvDefault(envMongoDBUser, "admin")
MongoDBUser = getEnvDefault(envMongoDBUser, "")
// MongoDBPassword password for all instances
MongoDBPassword = getEnvDefault(envMongoDBPassword, "admin123456")
MongoDBPassword = getEnvDefault(envMongoDBPassword, "")
// MongoDBTimeout global connection timeout
MongoDBTimeout = time.Duration(10) * time.Second
@@ -196,11 +196,13 @@ func TestClient(ctx context.Context, port string) (*mongo.Client, error) {
ConnectTimeout: &to,
Hosts: []string{net.JoinHostPort(hostname, port)},
Direct: &direct,
Auth: &options.Credential{
}
if MongoDBUser != "" {
co.Auth = &options.Credential{
Username: MongoDBUser,
Password: MongoDBPassword,
PasswordSet: true,
},
}
}
client, err := mongo.Connect(ctx, co)
@@ -215,3 +217,27 @@ func TestClient(ctx context.Context, port string) (*mongo.Client, error) {
return client, nil
}
func TestClientOptions(port string) *options.ClientOptions {
if port == "" {
port = MongoDBShard1PrimaryPort
}
hostname := "127.0.0.1"
direct := true
to := time.Second
co := &options.ClientOptions{
ConnectTimeout: &to,
Hosts: []string{net.JoinHostPort(hostname, port)},
Direct: &direct,
}
if MongoDBUser != "" {
co.Auth = &options.Credential{
Username: MongoDBUser,
Password: MongoDBPassword,
PasswordSet: true,
}
}
return co
}

View File

@@ -2,7 +2,6 @@ package explain
import (
"context"
"fmt"
"io/ioutil"
"log"
"os"
@@ -14,8 +13,6 @@ import (
"github.com/stretchr/testify/assert"
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
tu "github.com/percona/percona-toolkit/src/go/internal/testutils"
"github.com/percona/percona-toolkit/src/go/lib/tutil"
@@ -42,20 +39,13 @@ func TestMain(m *testing.M) {
}
func TestExplain(t *testing.T) {
t.Skip("Will be fixed in another branch")
t.Parallel()
uri := fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBMongosPort)
client, err := mongo.NewClient(options.Client().ApplyURI(uri))
if err != nil {
t.Fatalf("cannot get a new MongoDB client: %s", err)
}
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
err = client.Connect(ctx)
if err != nil {
t.Fatalf("Cannot connect to MongoDB: %s", err)
}
client, err := tu.TestClient(ctx, tu.MongoDBMongosPort)
dir := vars.RootPath + samples + "/doc/out/"
files, err := ioutil.ReadDir(dir)
if err != nil {

View File

@@ -2,7 +2,6 @@ package profiler
import (
"context"
"fmt"
"log"
"os"
"testing"
@@ -14,9 +13,8 @@ import (
"github.com/percona/percona-toolkit/src/go/mongolib/stats"
"github.com/percona/percona-toolkit/src/go/pt-mongodb-query-digest/filter"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
)
const (
@@ -44,17 +42,9 @@ func TestMain(m *testing.M) {
}
func TestRegularIterator(t *testing.T) {
uri := fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard1PrimaryPort)
client, err := mongo.NewClient(options.Client().ApplyURI(uri))
if err != nil {
t.Fatalf("Cannot create a new MongoDB client: %s", err)
}
ctx := context.Background()
if err := client.Connect(ctx); err != nil {
t.Fatalf("Cannot connect to MongoDB: %s", err)
}
client, err := tu.TestClient(ctx, tu.MongoDBShard1PrimaryPort)
require.NoError(t, err)
database := "test"
// Disable the profiler and drop the db. This should also remove the system.profile collection
@@ -67,7 +57,7 @@ func TestRegularIterator(t *testing.T) {
assert.NoError(t, err)
// re-enable the profiler
res = client.Database("admin").RunCommand(ctx, primitive.D{{"profile", 2}, {"slowms", 2}})
res = client.Database("test").RunCommand(ctx, primitive.D{{"profile", 2}, {"slowms", 0}})
if res.Err() != nil {
t.Fatalf("Cannot enable profiler: %s", res.Err())
}

View File

@@ -14,6 +14,7 @@ import (
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
"go.mongodb.org/mongo-driver/x/mongo/driver/topology"
"gopkg.in/mgo.v2/bson"
)
@@ -27,6 +28,7 @@ const (
shardingNotEnabledErrorCode = 203
ErrNotYetInitialized = int32(94)
ErrNoReplicationEnabled = int32(76)
ErrNotPrimaryOrSecondary = int32(13436)
)
var (
@@ -460,7 +462,9 @@ func ClusterID(ctx context.Context, client *mongo.Client) (string, error) {
if e, ok := err.(mongo.CommandError); ok && IsReplicationNotEnabledError(e) {
return "", nil
}
if _, ok := err.(topology.ServerSelectionError); ok {
return "", nil
}
return "", err
}
@@ -468,12 +472,18 @@ func ClusterID(ctx context.Context, client *mongo.Client) (string, error) {
}
func IsReplicationNotEnabledError(err mongo.CommandError) bool {
return err.Code == ErrNotYetInitialized || err.Code == ErrNoReplicationEnabled
return err.Code == ErrNotYetInitialized || err.Code == ErrNoReplicationEnabled ||
err.Code == ErrNotPrimaryOrSecondary
}
func MyState(ctx context.Context, client *mongo.Client) (int, error) {
var ms proto.MyState
if err := client.Database("admin").RunCommand(ctx, bson.M{"getDiagnosticData": 1}).Decode(&ms); err != nil {
err := client.Database("admin").RunCommand(ctx, bson.M{"getDiagnosticData": 1}).Decode(&ms)
if _, ok := err.(topology.ServerSelectionError); ok {
return 0, nil
}
if err != nil {
return 0, err
}

View File

@@ -3,110 +3,70 @@ package util
import (
"context"
"fmt"
"reflect"
"testing"
"time"
tu "github.com/percona/percona-toolkit/src/go/internal/testutils"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
)
func TestGetHostnames(t *testing.T) {
testCases := []struct {
name string
uri string
want []string
port string
want int
wantError bool
}{
{
name: "from_mongos",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s",
tu.MongoDBUser,
tu.MongoDBPassword,
tu.MongoDBHost,
tu.MongoDBMongosPort,
),
want: []string{"127.0.0.1:17001", "127.0.0.1:17002", "127.0.0.1:17004", "127.0.0.1:17005", "127.0.0.1:17007"},
name: "from_mongos",
port: tu.MongoDBMongosPort,
want: 9,
wantError: false,
},
{
name: "from_mongod",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s",
tu.MongoDBUser,
tu.MongoDBPassword,
tu.MongoDBHost,
tu.MongoDBShard1PrimaryPort,
),
want: []string{"127.0.0.1:17001", "127.0.0.1:17002", "127.0.0.1:17003"},
name: "from_mongod",
port: tu.MongoDBShard1PrimaryPort,
want: 3,
wantError: false,
},
{
name: "from_non_sharded",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s",
tu.MongoDBUser,
tu.MongoDBPassword,
tu.MongoDBHost,
tu.MongoDBShard3PrimaryPort,
),
want: []string{"127.0.0.1:17021", "127.0.0.1:17022", "127.0.0.1:17023"},
wantError: false,
},
{
name: "from_standalone",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s",
tu.MongoDBUser,
tu.MongoDBPassword,
tu.MongoDBHost,
tu.MongoDBStandalonePort,
),
want: nil,
name: "from_standalone",
port: tu.MongoDBStandalonePort,
want: 0,
wantError: true,
},
}
for _, test := range testCases {
uri := test.uri
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
for i, test := range testCases {
port := test.port
want := test.want
wantError := test.wantError
t.Run(test.name, func(t *testing.T) {
client, err := mongo.NewClient(options.Client().ApplyURI(uri))
if err != nil {
t.Fatalf("cannot get a new MongoDB client: %s", err)
}
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
err = client.Connect(ctx)
if err != nil {
t.Fatalf("Cannot connect to MongoDB: %s", err)
}
client, err := tu.TestClient(ctx, port)
require.NoError(t, err)
hostnames, err := GetHostnames(ctx, client)
if err != nil && !wantError {
t.Errorf("Expecting error=nil, got: %v", err)
t.Errorf("%d) Expecting error=nil, got: %v", i, err)
}
if !reflect.DeepEqual(hostnames, want) {
t.Errorf("Invalid hostnames. Got: %+v, want %+v", hostnames, want)
}
require.Equal(t, want, len(hostnames))
})
}
}
func TestGetServerStatus(t *testing.T) {
client, err := mongo.NewClient(options.Client().ApplyURI("mongodb://admin:admin123456@127.0.0.1:17001"))
if err != nil {
t.Fatalf("cannot get a new MongoDB client: %s", err)
}
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
err = client.Connect(ctx)
if err != nil {
t.Fatalf("Cannot connect to MongoDB: %s", err)
}
client, err := tu.TestClient(ctx, tu.MongoDBShard1PrimaryPort)
require.NoError(t, err)
_, err = GetServerStatus(ctx, client)
if err != nil {
@@ -117,41 +77,38 @@ func TestGetServerStatus(t *testing.T) {
func TestGetReplicasetMembers(t *testing.T) {
testCases := []struct {
name string
uri string
port string
want int
wantErr bool
}{
/* Replication is not enabled in the current sandbox
{
name: "from_mongos",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBMongosPort),
port: tu.MongoDBMongosPort,
want: 7,
wantErr: false,
},
*/
{
name: "from_mongod",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard1PrimaryPort),
want: 3,
wantErr: false,
},
{
name: "from_non_sharded",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard3PrimaryPort),
port: tu.MongoDBShard1PrimaryPort,
want: 3,
wantErr: false,
},
{
name: "from_standalone",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBStandalonePort),
port: tu.MongoDBStandalonePort,
want: 0,
wantErr: true,
},
}
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
for _, test := range testCases {
t.Run(test.name, func(t *testing.T) {
clientOptions := options.Client().ApplyURI(test.uri)
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
clientOptions := tu.TestClientOptions(test.port)
rsm, err := GetReplicasetMembers(ctx, clientOptions)
if err != nil && !test.wantErr {
@@ -167,46 +124,44 @@ func TestGetReplicasetMembers(t *testing.T) {
func TestGetShardedHosts(t *testing.T) {
testCases := []struct {
name string
uri string
port string
want int
err bool
}{
{
name: "from_mongos",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBMongosPort),
port: tu.MongoDBMongosPort,
want: 2,
err: false,
},
{
name: "from_mongod",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard1PrimaryPort),
port: tu.MongoDBShard1PrimaryPort,
want: 0,
err: true,
},
{
name: "from_non_sharded",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard3PrimaryPort),
port: tu.MongoDBShard3PrimaryPort,
want: 0,
err: true,
},
}
for i, test := range testCases {
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
for _, test := range testCases {
t.Run(test.name, func(t *testing.T) {
clientOptions := options.Client().ApplyURI(test.uri)
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
clientOptions := tu.TestClientOptions(test.port)
client, err := mongo.NewClient(clientOptions)
if err != nil {
t.Errorf("Cannot get a new client for host %s: %s", test.uri, err)
}
if client == nil {
t.Fatalf("mongodb client is nil i: %d, uri: %s\n", i, test.uri)
t.Errorf("Cannot get a new client for host at port %s: %s", test.port, err)
}
if err := client.Connect(ctx); err != nil {
t.Errorf("Cannot connect to host %s: %s", test.uri, err)
t.Errorf("Cannot connect to host at port %s: %s", test.port, err)
}
rsm, err := GetShardedHosts(ctx, client)
@@ -221,6 +176,8 @@ func TestGetShardedHosts(t *testing.T) {
}
func TestReplicasetConfig(t *testing.T) {
t.Skip("current sandbox doesn't support replicasets")
ctx, cancel := context.WithTimeout(context.Background(), time.Second)
defer cancel()

View File

@@ -39,15 +39,10 @@ func New(location, namespace, resource string) Dumper {
"replicationcontrollers",
"events",
"configmaps",
"secrets",
"cronjobs",
"jobs",
"podsecuritypolicies",
"poddisruptionbudgets",
"perconaxtradbbackups",
"perconaxtradbclusterbackups",
"perconaxtradbclusterrestores",
"perconaxtradbclusters",
"clusterrolebindings",
"clusterroles",
"rolebindings",
@@ -58,6 +53,20 @@ func New(location, namespace, resource string) Dumper {
}
if len(resource) > 0 {
resources = append(resources, resource)
if resourceType(resource) == "pxc" {
resources = append(resources,
"perconaxtradbbackups",
"perconaxtradbclusterbackups",
"perconaxtradbclusterrestores",
"perconaxtradbclusters")
} else if resourceType(resource) == "psmdb" {
resources = append(resources,
"perconaservermongodbbackups",
"perconaservermongodbrestores",
"perconaservermongodbs",
)
}
}
return Dumper{
cmd: "kubectl",
@@ -170,6 +179,13 @@ func (d *Dumper) DumpCluster() error {
if component == "psmdb" {
component = "mongod"
}
if pod.Labels["app.kubernetes.io/instance"] != "" && pod.Labels["app.kubernetes.io/component"] != "" {
resource := "secret/" + pod.Labels["app.kubernetes.io/instance"] + "-" + pod.Labels["app.kubernetes.io/component"]
err = d.getResource(resource, ns.Name, true, tw)
if err != nil {
log.Printf("Error: get %s resource: %v", resource, err)
}
}
if pod.Labels["app.kubernetes.io/component"] == component {
output, err = d.getPodSummary(resourceType(d.crType), pod.Name, pod.Labels["app.kubernetes.io/instance"], tw)
if err != nil {
@@ -189,14 +205,14 @@ func (d *Dumper) DumpCluster() error {
}
for _, resource := range d.resources {
err = d.getResource(resource, ns.Name, tw)
err = d.getResource(resource, ns.Name, false, tw)
if err != nil {
log.Printf("Error: get %s resource: %v", resource, err)
}
}
}
err = d.getResource("nodes", "", tw)
err = d.getResource("nodes", "", false, tw)
if err != nil {
return errors.Wrapf(err, "get nodes")
}
@@ -218,9 +234,12 @@ func (d *Dumper) runCmd(args ...string) ([]byte, error) {
return outb.Bytes(), nil
}
func (d *Dumper) getResource(name, namespace string, tw *tar.Writer) error {
func (d *Dumper) getResource(name, namespace string, ignoreNotFound bool, tw *tar.Writer) error {
location := d.location
args := []string{"get", name, "-o", "yaml"}
if ignoreNotFound {
args = append(args, "--ignore-not-found")
}
if len(namespace) > 0 {
args = append(args, "--namespace", namespace)
location = filepath.Join(d.location, namespace)
@@ -233,6 +252,9 @@ func (d *Dumper) getResource(name, namespace string, tw *tar.Writer) error {
return addToArchive(location, d.mode, []byte(err.Error()), tw)
}
if ignoreNotFound && len(output) == 0 {
return nil
}
return addToArchive(location, d.mode, output, tw)
}

View File

@@ -40,7 +40,7 @@ const (
var (
Build string = "2020-04-23" //nolint
GoVersion string = "1.14.1" //nolint
Version string = "3.3.1" //nolint
Version string = "3.3.2" //nolint
Commit string //nolint
)

View File

@@ -56,7 +56,7 @@ const (
var (
Build string = "2020-04-23"
GoVersion string = "1.14.1"
Version string = "3.3.1"
Version string = "3.3.2"
Commit string
defaultConnectionTimeout = 3 * time.Second

View File

@@ -2,7 +2,6 @@ package main
import (
"context"
"fmt"
"os"
"reflect"
"testing"
@@ -11,44 +10,35 @@ import (
"github.com/pborman/getopt"
tu "github.com/percona/percona-toolkit/src/go/internal/testutils"
"github.com/percona/percona-toolkit/src/go/mongolib/proto"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
)
func TestGetHostInfo(t *testing.T) {
testCases := []struct {
name string
uri string
port string
want []string
}{
{
name: "from_mongos",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBMongosPort),
port: tu.MongoDBMongosPort,
want: []string{"127.0.0.1:17001", "127.0.0.1:17002", "127.0.0.1:17004", "127.0.0.1:17005", "127.0.0.1:17007"},
},
{
name: "from_mongod",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard1PrimaryPort),
port: tu.MongoDBShard1PrimaryPort,
want: []string{"127.0.0.1:17001", "127.0.0.1:17002", "127.0.0.1:17003"},
},
{
name: "from_non_sharded",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard3PrimaryPort),
want: []string{"127.0.0.1:17021", "127.0.0.1:17022", "127.0.0.1:17023"},
},
}
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
for _, test := range testCases {
t.Run(test.name, func(t *testing.T) {
client, err := mongo.NewClient(options.Client().ApplyURI(test.uri))
client, err := tu.TestClient(ctx, test.port)
if err != nil {
t.Fatalf("cannot get a new MongoDB client: %s", err)
}
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
err = client.Connect(ctx)
if err != nil {
t.Fatalf("Cannot connect to MongoDB: %s", err)
}
_, err = getHostInfo(ctx, client)
if err != nil {
@@ -61,37 +51,30 @@ func TestGetHostInfo(t *testing.T) {
func TestClusterWideInfo(t *testing.T) {
testCases := []struct {
name string
uri string
port string
want []string
}{
{
name: "from_mongos",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBMongosPort),
port: tu.MongoDBMongosPort,
want: []string{"127.0.0.1:17001", "127.0.0.1:17002", "127.0.0.1:17004", "127.0.0.1:17005", "127.0.0.1:17007"},
},
{
name: "from_mongod",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard1PrimaryPort),
port: tu.MongoDBShard1PrimaryPort,
want: []string{"127.0.0.1:17001", "127.0.0.1:17002", "127.0.0.1:17003"},
},
{
name: "from_non_sharded",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard3PrimaryPort),
want: []string{"127.0.0.1:17021", "127.0.0.1:17022", "127.0.0.1:17023"},
},
}
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
for _, test := range testCases {
t.Run(test.name, func(t *testing.T) {
client, err := mongo.NewClient(options.Client().ApplyURI(test.uri))
client, err := tu.TestClient(ctx, test.port)
if err != nil {
t.Fatalf("cannot get a new MongoDB client: %s", err)
}
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
err = client.Connect(ctx)
if err != nil {
t.Fatalf("Cannot connect to MongoDB: %s", err)
}
_, err = getClusterwideInfo(ctx, client)
if err != nil {

View File

@@ -2,54 +2,42 @@ package oplog
import (
"context"
"fmt"
"testing"
"time"
tu "github.com/percona/percona-toolkit/src/go/internal/testutils"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
)
func TestGetOplogCollection(t *testing.T) {
testCases := []struct {
name string
uri string
port string
want string
err bool
}{
{
name: "from_mongos",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBMongosPort),
port: tu.MongoDBMongosPort,
want: "",
err: true,
},
{
name: "from_mongod",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard1PrimaryPort),
want: "oplog.rs",
err: false,
},
{
name: "from_non_sharded",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard3PrimaryPort),
port: tu.MongoDBShard1PrimaryPort,
want: "oplog.rs",
err: false,
},
}
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
for _, test := range testCases {
t.Run(test.name, func(t *testing.T) {
client, err := mongo.NewClient(options.Client().ApplyURI(test.uri))
client, err := tu.TestClient(ctx, test.port)
if err != nil {
t.Fatalf("cannot get a new MongoDB client: %s", err)
}
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
err = client.Connect(ctx)
if err != nil {
t.Fatalf("Cannot connect to MongoDB: %s", err)
}
oplogCol, err := getOplogCollection(ctx, client)
if (err != nil) != test.err {
@@ -65,37 +53,30 @@ func TestGetOplogCollection(t *testing.T) {
func TestGetOplogInfo(t *testing.T) {
testCases := []struct {
name string
uri string
port string
wantHost bool
err bool
}{
{
name: "from_mongos",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBMongosPort),
port: tu.MongoDBMongosPort,
wantHost: false,
err: true,
},
{
name: "from_mongod",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard1PrimaryPort),
wantHost: true,
err: false,
},
{
name: "from_non_sharded",
uri: fmt.Sprintf("mongodb://%s:%s@%s:%s", tu.MongoDBUser, tu.MongoDBPassword, tu.MongoDBHost, tu.MongoDBShard3PrimaryPort),
port: tu.MongoDBShard1PrimaryPort,
wantHost: true,
err: false,
},
}
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
for _, test := range testCases {
t.Run(test.name, func(t *testing.T) {
clientOptions := options.Client().ApplyURI(test.uri)
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
oplogInfo, err := GetOplogInfo(ctx, clientOptions.Hosts, clientOptions)
oplogInfo, err := GetOplogInfo(ctx, []string{"127.0.0.1:" + test.port}, tu.TestClientOptions(test.port))
if (err != nil) != test.err {
t.Errorf("Expected error=%v, got %v", test.err, err)
}

Binary file not shown.

View File

@@ -162,7 +162,7 @@ is(
# This is a known deficiency, fixes seem to be expensive though.
is(
$qr->fingerprint("select '\\\\' from foo"),
"select '\\ from foo",
"select ? from foo",
"Does not handle all quoted strings",
);
@@ -1478,6 +1478,19 @@ is(
"Fingerprint db.tbl<number>name (preserve number)"
);
is(
$qr->fingerprint(
"SELECT i FROM d.t WHERE i=\"3\""
),
"select i from d.t where i=?",
"Fingerprint db.tbl<number>name (preserve number)"
);
is(
$qr->fingerprint("CALL foo(1, 2, 3)"),
"call foo",
'Fingerprints stored procedure calls specially',
);
# #############################################################################
# Done.
# #############################################################################

View File

@@ -0,0 +1,37 @@
#!/usr/bin/env perl
BEGIN {
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
};
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use Test::More;
use PerconaTest;
use Sandbox;
require "$trunk/bin/pt-deadlock-logger";
my $dp = new DSNParser(opts=>$dsn_opts);
my $sb = new Sandbox(basedir => '/tmp', DSNParser => $dp);
my $dbh = $sb->get_dbh_for('master');
my ($output, $exist_status) = full_output(
sub {
pt_deadlock_logger::main(
"h=127.1,D=non_existent_db,u=msandbox,p=msandbox",
qw(--clear-deadlocks non_existent_db.make_deadlock --port 12345),
qw(--iterations 1)
)
}
);
# #############################################################################
# Done.
# #############################################################################
$sb->wipe_clean($dbh);
ok($sb->ok(), "Sandbox servers") or BAIL_OUT(__FILE__ . " broke the sandbox");
done_testing;

View File

@@ -0,0 +1,37 @@
#!/usr/bin/env perl
BEGIN {
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
};
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use Test::More;
use PerconaTest;
use Sandbox;
require "$trunk/bin/pt-heartbeat";
my $dp = new DSNParser(opts=>$dsn_opts);
my $sb = new Sandbox(basedir => '/tmp', DSNParser => $dp);
my $dbh = $sb->get_dbh_for('master');
my ($output, $exist_status) = full_output(
sub {
pt_heartbeat::main(
"h=127.1,D=non_existent_db,u=msandbox,p=msandbox",
qw(--clear-deadlocks non_existent_db.make_deadlock --port 12345),
qw(--iterations 1)
)
}
);
# #############################################################################
# Done.
# #############################################################################
$sb->wipe_clean($dbh);
ok($sb->ok(), "Sandbox servers") or BAIL_OUT(__FILE__ . " broke the sandbox");
done_testing;

View File

@@ -259,7 +259,7 @@ SELECT `SCHEMA_NAME` FROM `INFORMATION_SCHEMA`.`SCHEMATA`, (SELECT DB_first_leve
# EXPLAIN /*!50100 PARTITIONS*/
SELECT USER()\G
# Query 12: 0 QPS, 0x concurrency, ID 0x75A885FE43F31908754B91A2F3BD1E20 at byte 1082
# Query 12: 0 QPS, 0x concurrency, ID 0x15BF4DCE0B364CE831C14D6853A472B7 at byte 1082
# This item is included in the report because it matches --limit.
# Scores: V/M = 0.00
# Time range: all events occurred at 2016-06-07T19:07:02.565999Z
@@ -303,4 +303,4 @@ SELECT 1 FROM (SELECT `GRANTEE`, `IS_GRANTABLE` FROM `INFORMATION_SCHEMA`.`COLUM
# 9 0xDDABDE67AC3044CAED549F59FFFA541B 0.0000 0.0% 1 0.0000 0.00 SELECT phpmyadmin.pma__navigationhiding
# 10 0x35CCC630581DCD5AA46100310F18DEB9 0.0000 0.0% 1 0.0000 0.00 SELECT INFORMATION_SCHEMA.SCHEMATA
# 11 0x7B48FAA9C951DD8A389FF9DA2DF3DF62 0.0000 0.0% 1 0.0000 0.00 SELECT
# 12 0x75A885FE43F31908754B91A2F3BD1E20 0.0000 0.0% 1 0.0000 0.00 SELECT UNION INFORMATION_SCHEMA.COLUMN_PRIVILEGES INFORMATION_SCHEMA.TABLE_PRIVILEGES INFORMATION_SCHEMA.SCHEMA_PRIVILEGES INFORMATION_SCHEMA.USER_PRIVILEGES
# 12 0x15BF4DCE0B364CE831C14D6853A472B7 0.0000 0.0% 1 0.0000 0.00 SELECT UNION INFORMATION_SCHEMA.COLUMN_PRIVILEGES INFORMATION_SCHEMA.TABLE_PRIVILEGES INFORMATION_SCHEMA.SCHEMA_PRIVILEGES INFORMATION_SCHEMA.USER_PRIVILEGES

View File

@@ -1 +1 @@
# Exec time 100 10s 1s 3s 2s 3s 896ms 2s
# Exec time 100 9s 2s 4s 3s 4s 786ms 3s

View File

@@ -14,9 +14,9 @@ use PerconaTest;
my ($tool) = $PROGRAM_NAME =~ m/([\w-]+)\.t$/;
use Test::More tests => 2;
use Test::More tests => 3;
for my $i (2..3) {
for my $i (2..3,5) {
ok(
no_diff(
sub { print `$trunk/bin/pt-summary --read-samples "$trunk/t/pt-summary/samples/Linux/00$i/" | tail -n+3` },

View File

@@ -0,0 +1,465 @@
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.0-1160.31.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Jun 10 13:32:12 UTC 2021
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-3.10.0-1160.31.1.el7.x86_64 root=UUID=8ac075e3-1124-4bb6-bef7-a6811bf8b870 ro no_timer_check console=tty0 console=ttyS0,115200n8 net.ifnames=0 biosdevname=0 elevator=noop crashkernel=auto LANG=en_US.UTF-8
[ 0.000000] e820: BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable
[ 0.000000] BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved
[ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000dffeffff] usable
[ 0.000000] BIOS-e820: [mem 0x00000000dfff0000-0x00000000dfffffff] ACPI data
[ 0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved
[ 0.000000] BIOS-e820: [mem 0x0000000100000000-0x000000011fffffff] usable
[ 0.000000] NX (Execute Disable) protection: active
[ 0.000000] SMBIOS 2.5 present.
[ 0.000000] DMI: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006
[ 0.000000] Hypervisor detected: KVM
[ 0.000000] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[ 0.000000] e820: remove [mem 0x000a0000-0x000fffff] usable
[ 0.000000] e820: last_pfn = 0x120000 max_arch_pfn = 0x400000000
[ 0.000000] MTRR default type: uncachable
[ 0.000000] MTRR variable ranges disabled:
[ 0.000000] PAT configuration [0-7]: WB WC UC- UC WB WP UC- UC
[ 0.000000] CPU MTRRs all blank - virtualized system.
[ 0.000000] e820: last_pfn = 0xdfff0 max_arch_pfn = 0x400000000
[ 0.000000] found SMP MP-table at [mem 0x0009fff0-0x0009ffff] mapped at [ffffffffff200ff0]
[ 0.000000] Base memory trampoline at [ffffa07640099000] 99000 size 24576
[ 0.000000] BRK [0x10f673000, 0x10f673fff] PGTABLE
[ 0.000000] BRK [0x10f674000, 0x10f674fff] PGTABLE
[ 0.000000] BRK [0x10f675000, 0x10f675fff] PGTABLE
[ 0.000000] BRK [0x10f676000, 0x10f676fff] PGTABLE
[ 0.000000] BRK [0x10f677000, 0x10f677fff] PGTABLE
[ 0.000000] BRK [0x10f678000, 0x10f678fff] PGTABLE
[ 0.000000] BRK [0x10f679000, 0x10f679fff] PGTABLE
[ 0.000000] BRK [0x10f67a000, 0x10f67afff] PGTABLE
[ 0.000000] BRK [0x10f67b000, 0x10f67bfff] PGTABLE
[ 0.000000] RAMDISK: [mem 0x368ab000-0x3744dfff]
[ 0.000000] Early table checksum verification disabled
[ 0.000000] ACPI: RSDP 00000000000e0000 00024 (v02 VBOX )
[ 0.000000] ACPI: XSDT 00000000dfff0030 0003C (v01 VBOX VBOXXSDT 00000001 ASL 00000061)
[ 0.000000] ACPI: FACP 00000000dfff00f0 000F4 (v04 VBOX VBOXFACP 00000001 ASL 00000061)
[ 0.000000] ACPI: DSDT 00000000dfff0480 02325 (v02 VBOX VBOXBIOS 00000002 INTL 20210604)
[ 0.000000] ACPI: FACS 00000000dfff0200 00040
[ 0.000000] ACPI: APIC 00000000dfff0240 0006C (v02 VBOX VBOXAPIC 00000001 ASL 00000061)
[ 0.000000] ACPI: SSDT 00000000dfff02b0 001CC (v01 VBOX VBOXCPUT 00000002 INTL 20210604)
[ 0.000000] ACPI: Local APIC address 0xfee00000
[ 0.000000] No NUMA configuration found
[ 0.000000] Faking a node at [mem 0x0000000000000000-0x000000011fffffff]
[ 0.000000] NODE_DATA(0) allocated [mem 0x11ffd9000-0x11fffffff]
[ 0.000000] Reserving 161MB of memory at 704MB for crashkernel (System RAM: 4095MB)
[ 0.000000] kvm-clock: cpu 0, msr 1:1ff88001, primary cpu clock
[ 0.000000] kvm-clock: Using msrs 4b564d01 and 4b564d00
[ 0.000000] kvm-clock: using sched offset of 3873159013 cycles
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x00001000-0x00ffffff]
[ 0.000000] DMA32 [mem 0x01000000-0xffffffff]
[ 0.000000] Normal [mem 0x100000000-0x11fffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x00001000-0x0009efff]
[ 0.000000] node 0: [mem 0x00100000-0xdffeffff]
[ 0.000000] node 0: [mem 0x100000000-0x11fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x00001000-0x11fffffff]
[ 0.000000] On node 0 totalpages: 1048462
[ 0.000000] DMA zone: 64 pages used for memmap
[ 0.000000] DMA zone: 21 pages reserved
[ 0.000000] DMA zone: 3998 pages, LIFO batch:0
[ 0.000000] DMA32 zone: 14272 pages used for memmap
[ 0.000000] DMA32 zone: 913392 pages, LIFO batch:31
[ 0.000000] Normal zone: 2048 pages used for memmap
[ 0.000000] Normal zone: 131072 pages, LIFO batch:31
[ 0.000000] ACPI: PM-Timer IO Port: 0x4008
[ 0.000000] ACPI: Local APIC address 0xfee00000
[ 0.000000] ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
[ 0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
[ 0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] enabled)
[ 0.000000] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x03] enabled)
[ 0.000000] ACPI: IOAPIC (id[0x04] address[0xfec00000] gsi_base[0])
[ 0.000000] IOAPIC[0]: apic_id 4, version 32, address 0xfec00000, GSI 0-23
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level)
[ 0.000000] ACPI: IRQ0 used by override.
[ 0.000000] ACPI: IRQ9 used by override.
[ 0.000000] Using ACPI (MADT) for SMP configuration information
[ 0.000000] smpboot: Allowing 4 CPUs, 0 hotplug CPUs
[ 0.000000] PM: Registered nosave memory: [mem 0x0009f000-0x0009ffff]
[ 0.000000] PM: Registered nosave memory: [mem 0x000a0000-0x000effff]
[ 0.000000] PM: Registered nosave memory: [mem 0x000f0000-0x000fffff]
[ 0.000000] PM: Registered nosave memory: [mem 0xdfff0000-0xdfffffff]
[ 0.000000] PM: Registered nosave memory: [mem 0xe0000000-0xfebfffff]
[ 0.000000] PM: Registered nosave memory: [mem 0xfec00000-0xfec00fff]
[ 0.000000] PM: Registered nosave memory: [mem 0xfec01000-0xfedfffff]
[ 0.000000] PM: Registered nosave memory: [mem 0xfee00000-0xfee00fff]
[ 0.000000] PM: Registered nosave memory: [mem 0xfee01000-0xfffbffff]
[ 0.000000] PM: Registered nosave memory: [mem 0xfffc0000-0xffffffff]
[ 0.000000] e820: [mem 0xe0000000-0xfebfffff] available for PCI devices
[ 0.000000] Booting paravirtualized kernel on KVM
[ 0.000000] setup_percpu: NR_CPUS:5120 nr_cpumask_bits:4 nr_cpu_ids:4 nr_node_ids:1
[ 0.000000] percpu: Embedded 38 pages/cpu s118784 r8192 d28672 u524288
[ 0.000000] pcpu-alloc: s118784 r8192 d28672 u524288 alloc=1*2097152
[ 0.000000] pcpu-alloc: [0] 0 1 2 3
[ 0.000000] PV qspinlock hash table entries: 256 (order: 0, 4096 bytes)
[ 0.000000] Built 1 zonelists in Node order, mobility grouping on. Total pages: 1032057
[ 0.000000] Policy zone: Normal
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.10.0-1160.31.1.el7.x86_64 root=UUID=8ac075e3-1124-4bb6-bef7-a6811bf8b870 ro no_timer_check console=tty0 console=ttyS0,115200n8 net.ifnames=0 biosdevname=0 elevator=noop crashkernel=auto LANG=en_US.UTF-8
[ 0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[ 0.000000] x86/fpu: xstate_offset[2]: 0240, xstate_sizes[2]: 0100
[ 0.000000] xsave: enabled xstate_bv 0x7, cntxt size 0x340 using standard form
[ 0.000000] Memory: 3865108k/4718592k available (7796k kernel code, 524744k absent, 328740k reserved, 5947k data, 1980k init)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] x86/pti: Unmapping kernel while in userspace
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] RCU restricting CPUs from NR_CPUS=5120 to nr_cpu_ids=4.
[ 0.000000] NR_IRQS:327936 nr_irqs:456 0
[ 0.000000] Console: colour VGA+ 80x25
[ 0.000000] console [tty0] enabled
[ 0.000000] console [ttyS0] enabled
[ 0.000000] allocated 33554432 bytes of page_cgroup
[ 0.000000] please try 'cgroup_disable=memory' option if you don't want memory cgroups
[ 0.000000] tsc: Detected 2043.942 MHz processor
[ 0.172285] Calibrating delay loop (skipped) preset value.. 4087.88 BogoMIPS (lpj=2043942)
[ 0.173208] pid_max: default: 32768 minimum: 301
[ 0.173709] Security Framework initialized
[ 0.174164] SELinux: Initializing.
[ 0.174601] SELinux: Starting in permissive mode
[ 0.174602] Yama: becoming mindful.
[ 0.175581] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes)
[ 0.177537] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
[ 0.178321] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.178887] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.179575] Initializing cgroup subsys memory
[ 0.180042] Initializing cgroup subsys devices
[ 0.180509] Initializing cgroup subsys freezer
[ 0.180972] Initializing cgroup subsys net_cls
[ 0.181472] Initializing cgroup subsys blkio
[ 0.181959] Initializing cgroup subsys perf_event
[ 0.182491] Initializing cgroup subsys hugetlb
[ 0.183001] Initializing cgroup subsys pids
[ 0.183458] Initializing cgroup subsys net_prio
[ 0.196419] Last level iTLB entries: 4KB 0, 2MB 0, 4MB 0
[ 0.196967] Last level dTLB entries: 4KB 64, 2MB 0, 4MB 0
[ 0.197422] tlb_flushall_shift: 6
[ 0.197885] FEATURE SPEC_CTRL Not Present
[ 0.198336] FEATURE IBPB_SUPPORT Not Present
[ 0.198801] Spectre V1 : Mitigation: Load fences, usercopy/swapgs barriers and __user pointer sanitization
[ 0.199959] Spectre V2 : Vulnerable: Retpoline without IBPB
[ 0.200538] Speculative Store Bypass: Vulnerable
[ 0.201040] SRBDS: Unknown: Dependent on hypervisor status
[ 0.201502] MDS: Mitigation: Clear CPU buffers
[ 0.202451] Freeing SMP alternatives: 28k freed
[ 0.210309] ACPI: Core revision 20130517
[ 0.211290] ACPI: All ACPI Tables successfully acquired
[ 0.211892] ftrace: allocating 29683 entries in 116 pages
[ 0.255783] Enabling x2apic
[ 0.256181] Enabled x2apic
[ 0.256843] Switched APIC routing to physical x2apic.
[ 0.258183] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
[ 0.258685] smpboot: CPU0: Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz (fam: 06, model: 8e, stepping: 0b)
[ 0.358378] Performance Events: unsupported p6 CPU model 142 no PMU driver, software events only.
[ 0.359349] KVM setup paravirtual spinlock
[ 0.361327] kvm-clock: cpu 1, msr 1:1ff88041, secondary cpu clock
[ 0.379172] kvm-clock: cpu 2, msr 1:1ff88081, secondary cpu clock
[ 0.360833] smpboot: Booting Node 0, Processors #1 #2 #3 OK
[ 0.396683] kvm-clock: cpu 3, msr 1:1ff880c1, secondary cpu clock
[ 0.414735] Brought up 4 CPUs
[ 0.415211] smpboot: Max logical packages: 1
[ 0.415710] smpboot: Total of 4 processors activated (16351.53 BogoMIPS)
[ 0.416893] devtmpfs: initialized
[ 0.417865] x86/mm: Memory block size: 128MB
[ 0.420223] EVM: security.selinux
[ 0.420665] EVM: security.ima
[ 0.421081] EVM: security.capability
[ 0.422677] atomic64 test passed for x86-64 platform with CX8 and with SSE
[ 0.423277] pinctrl core: initialized pinctrl subsystem
[ 0.423825] RTC time: 12:31:55, date: 09/07/21
[ 0.424417] NET: Registered protocol family 16
[ 0.424988] cpuidle: using governor haltpoll
[ 0.425508] ACPI: bus type PCI registered
[ 0.425974] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
[ 0.426598] PCI: Using configuration type 1 for base access
[ 0.431497] ACPI: Added _OSI(Module Device)
[ 0.432002] ACPI: Added _OSI(Processor Device)
[ 0.432493] ACPI: Added _OSI(3.0 _SCP Extensions)
[ 0.433029] ACPI: Added _OSI(Processor Aggregator Device)
[ 0.433532] ACPI: Added _OSI(Linux-Dell-Video)
[ 0.434313] ACPI: EC: Look up EC in DSDT
[ 0.434531] ACPI: Executed 1 blocks of module-level executable AML code
[ 0.436632] ACPI: Interpreter enabled
[ 0.437095] ACPI: (supports S0 S5)
[ 0.437525] ACPI: Using IOAPIC for interrupt routing
[ 0.438140] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
[ 0.439546] ACPI: Enabled 2 GPEs in block 00 to 07
[ 0.442592] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])
[ 0.443133] acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments MSI]
[ 0.443929] acpi PNP0A03:00: _OSC: not requesting OS control; OS requires [ExtendedConfig ASPM ClockPM MSI]
[ 0.444897] acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended PCI configuration space under this bridge.
[ 0.446136] PCI host bridge to bus 0000:00
[ 0.446623] pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7 window]
[ 0.447180] pci_bus 0000:00: root bus resource [io 0x0d00-0xffff window]
[ 0.447766] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window]
[ 0.448644] pci_bus 0000:00: root bus resource [mem 0xe0000000-0xfdffffff window]
[ 0.449512] pci_bus 0000:00: root bus resource [bus 00-ff]
[ 0.450046] pci 0000:00:00.0: [8086:1237] type 00 class 0x060000
[ 0.450444] pci 0000:00:01.0: [8086:7000] type 00 class 0x060100
[ 0.450847] pci 0000:00:01.1: [8086:7111] type 00 class 0x01018a
[ 0.451039] pci 0000:00:01.1: reg 0x20: [io 0xd000-0xd00f]
[ 0.451146] pci 0000:00:01.1: legacy IDE quirk: reg 0x10: [io 0x01f0-0x01f7]
[ 0.451722] pci 0000:00:01.1: legacy IDE quirk: reg 0x14: [io 0x03f6]
[ 0.452299] pci 0000:00:01.1: legacy IDE quirk: reg 0x18: [io 0x0170-0x0177]
[ 0.452868] pci 0000:00:01.1: legacy IDE quirk: reg 0x1c: [io 0x0376]
[ 0.453597] pci 0000:00:02.0: [80ee:beef] type 00 class 0x030000
[ 0.456164] pci 0000:00:02.0: reg 0x10: [mem 0xe0000000-0xe0ffffff pref]
[ 0.471559] pci 0000:00:03.0: [8086:100e] type 00 class 0x020000
[ 0.473936] pci 0000:00:03.0: reg 0x10: [mem 0xf0000000-0xf001ffff]
[ 0.478313] pci 0000:00:03.0: reg 0x18: [io 0xd010-0xd017]
[ 0.487550] pci 0000:00:04.0: [80ee:cafe] type 00 class 0x088000
[ 0.489807] pci 0000:00:04.0: reg 0x10: [io 0xd020-0xd03f]
[ 0.491751] pci 0000:00:04.0: reg 0x14: [mem 0xf0400000-0xf07fffff]
[ 0.493882] pci 0000:00:04.0: reg 0x18: [mem 0xf0800000-0xf0803fff pref]
[ 0.502338] pci 0000:00:05.0: [8086:2415] type 00 class 0x040100
[ 0.502412] pci 0000:00:05.0: reg 0x10: [io 0xd100-0xd1ff]
[ 0.502451] pci 0000:00:05.0: reg 0x14: [io 0xd200-0xd23f]
[ 0.502786] pci 0000:00:07.0: [8086:7113] type 00 class 0x068000
[ 0.503070] pci 0000:00:07.0: quirk: [io 0x4000-0x403f] claimed by PIIX4 ACPI
[ 0.503942] pci 0000:00:07.0: quirk: [io 0x4100-0x410f] claimed by PIIX4 SMB
[ 0.504710] pci 0000:00:08.0: [8086:100e] type 00 class 0x020000
[ 0.506865] pci 0000:00:08.0: reg 0x10: [mem 0xf0820000-0xf083ffff]
[ 0.510776] pci 0000:00:08.0: reg 0x18: [io 0xd240-0xd247]
[ 0.520212] ACPI: PCI Interrupt Link [LNKA] (IRQs 5 9 10 *11)
[ 0.521132] ACPI: PCI Interrupt Link [LNKB] (IRQs 5 9 *10 11)
[ 0.521941] ACPI: PCI Interrupt Link [LNKC] (IRQs 5 *9 10 11)
[ 0.522776] ACPI: PCI Interrupt Link [LNKD] (IRQs 5 9 10 *11)
[ 0.523840] vgaarb: device added: PCI:0000:00:02.0,decodes=io+mem,owns=io+mem,locks=none
[ 0.524736] vgaarb: loaded
[ 0.525144] vgaarb: bridge control possible 0000:00:02.0
[ 0.525800] SCSI subsystem initialized
[ 0.526271] ACPI: bus type USB registered
[ 0.526736] usbcore: registered new interface driver usbfs
[ 0.527255] usbcore: registered new interface driver hub
[ 0.527810] usbcore: registered new device driver usb
[ 0.528482] EDAC MC: Ver: 3.0.0
[ 0.529293] PCI: Using ACPI for IRQ routing
[ 0.529792] PCI: pci_cache_line_size set to 64 bytes
[ 0.529898] e820: reserve RAM buffer [mem 0x0009fc00-0x0009ffff]
[ 0.529901] e820: reserve RAM buffer [mem 0xdfff0000-0xdfffffff]
[ 0.530005] NetLabel: Initializing
[ 0.530441] NetLabel: domain hash size = 128
[ 0.530934] NetLabel: protocols = UNLABELED CIPSOv4
[ 0.531442] NetLabel: unlabeled traffic allowed by default
[ 0.532065] amd_nb: Cannot enumerate AMD northbridges
[ 0.532609] Switched to clocksource kvm-clock
[ 0.537182] pnp: PnP ACPI init
[ 0.537620] ACPI: bus type PNP registered
[ 0.538135] pnp 00:00: Plug and Play ACPI device, IDs PNP0303 (active)
[ 0.538199] pnp 00:01: Plug and Play ACPI device, IDs PNP0f03 (active)
[ 0.538570] pnp: PnP ACPI: found 2 devices
[ 0.539055] ACPI: bus type PNP unregistered
[ 0.546688] pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7 window]
[ 0.546691] pci_bus 0000:00: resource 5 [io 0x0d00-0xffff window]
[ 0.546693] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff window]
[ 0.546695] pci_bus 0000:00: resource 7 [mem 0xe0000000-0xfdffffff window]
[ 0.546721] NET: Registered protocol family 2
[ 0.547887] TCP established hash table entries: 32768 (order: 6, 262144 bytes)
[ 0.548839] TCP bind hash table entries: 32768 (order: 7, 524288 bytes)
[ 0.549472] TCP: Hash tables configured (established 32768 bind 32768)
[ 0.550096] TCP: reno registered
[ 0.550509] UDP hash table entries: 2048 (order: 4, 65536 bytes)
[ 0.551120] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes)
[ 0.551752] NET: Registered protocol family 1
[ 0.552331] pci 0000:00:00.0: Limiting direct PCI/PCI transfers
[ 0.552952] pci 0000:00:01.0: Activating ISA DMA hang workarounds
[ 0.553537] pci 0000:00:02.0: Boot video device
[ 0.553590] PCI: CLS 0 bytes, default 64
[ 0.553618] Unpacking initramfs...
[ 0.671956] Freeing initrd memory: 11916k freed
[ 0.674876] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[ 0.675467] software IO TLB [mem 0xdbff0000-0xdfff0000] (64MB) mapped at [ffffa0771bff0000-ffffa0771ffeffff]
[ 0.676526] RAPL PMU: API unit is 2^-32 Joules, 5 fixed counters, 10737418240 ms ovfl timer
[ 0.677481] RAPL PMU: hw unit of domain pp0-core 2^-0 Joules
[ 0.678064] RAPL PMU: hw unit of domain package 2^-0 Joules
[ 0.678581] RAPL PMU: hw unit of domain dram 2^-0 Joules
[ 0.679102] RAPL PMU: hw unit of domain pp1-gpu 2^-0 Joules
[ 0.679754] RAPL PMU: hw unit of domain psys 2^-0 Joules
[ 0.680345] platform rtc_cmos: registered platform RTC device (no PNP device found)
[ 0.682057] sha1_ssse3: Using AVX optimized SHA-1 implementation
[ 0.682743] sha256_ssse3: Using AVX optimized SHA-256 implementation
[ 0.683912] futex hash table entries: 1024 (order: 4, 65536 bytes)
[ 0.684468] Initialise system trusted keyring
[ 0.684963] audit: initializing netlink socket (disabled)
[ 0.685474] type=2000 audit(1631017921.123:1): initialized
[ 0.703951] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[ 0.705634] zpool: loaded
[ 0.706022] zbud: loaded
[ 0.706654] VFS: Disk quotas dquot_6.5.2
[ 0.707102] Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 0.708280] Key type big_key registered
[ 0.708779] SELinux: Registering netfilter hooks
[ 0.710575] NET: Registered protocol family 38
[ 0.711078] Key type asymmetric registered
[ 0.711545] Asymmetric key parser 'x509' registered
[ 0.712226] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
[ 0.713230] io scheduler noop registered (default)
[ 0.713774] io scheduler deadline registered
[ 0.714332] io scheduler cfq registered
[ 0.721079] io scheduler mq-deadline registered
[ 0.721597] io scheduler kyber registered
[ 0.722228] pci_hotplug: PCI Hot Plug PCI Core version: 0.5
[ 0.722739] pciehp: PCI Express Hot Plug Controller Driver version: 0.4
[ 0.723302] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
[ 0.723919] intel_idle: does not run on family 6 model 142
[ 0.724022] ACPI: AC Adapter [AC] (on-line)
[ 0.724530] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
[ 0.725496] ACPI: Power Button [PWRF]
[ 0.726018] input: Sleep Button as /devices/LNXSYSTM:00/LNXSLPBN:00/input/input1
[ 0.726864] ACPI: Sleep Button [SLPF]
[ 0.727501] GHES: HEST is not enabled!
[ 0.728005] ACPI: Battery Slot [BAT0] (battery present)
[ 0.728701] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 0.729900] Non-volatile memory driver v1.3
[ 0.730406] Linux agpgart interface v0.103
[ 0.731079] crash memory driver: version 1.1
[ 0.731643] rdac: device handler registered
[ 0.732186] hp_sw: device handler registered
[ 0.732618] emc: device handler registered
[ 0.733164] alua: device handler registered
[ 0.733801] libphy: Fixed MDIO Bus: probed
[ 0.734312] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.734889] ehci-pci: EHCI PCI platform driver
[ 0.735319] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.735856] ohci-pci: OHCI PCI platform driver
[ 0.736287] uhci_hcd: USB Universal Host Controller Interface driver
[ 0.736895] usbcore: registered new interface driver usbserial_generic
[ 0.737506] usbserial: USB Serial support registered for generic
[ 0.738185] i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f03:PS2M] at 0x60,0x64 irq 1,12
[ 0.739512] serio: i8042 KBD port at 0x60,0x64 irq 1
[ 0.740041] serio: i8042 AUX port at 0x60,0x64 irq 12
[ 0.740695] mousedev: PS/2 mouse device common for all mice
[ 0.741732] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2
[ 0.743387] rtc_cmos rtc_cmos: rtc core: registered rtc_cmos as rtc0
[ 0.743978] rtc_cmos rtc_cmos: alarms up to one day, 114 bytes nvram
[ 0.744639] hidraw: raw HID events driver (C) Jiri Kosina
[ 0.745386] usbcore: registered new interface driver usbhid
[ 0.746008] usbhid: USB HID core driver
[ 0.746552] drop_monitor: Initializing network drop monitor service
[ 0.747158] Netfilter messages via NETLINK v0.30.
[ 0.747706] TCP: cubic registered
[ 0.748133] Initializing XFRM netlink socket
[ 0.748716] NET: Registered protocol family 10
[ 0.749390] NET: Registered protocol family 17
[ 0.749889] mpls_gso: MPLS GSO support
[ 0.750497] mce: Using 0 MCE banks
[ 0.751181] PM: Hibernation image not present or could not be loaded.
[ 0.751184] Loading compiled-in X.509 certificates
[ 0.751694] Loaded X.509 cert 'CentOS Linux kpatch signing key: ea0413152cde1d98ebdca3fe6f0230904c9ef717'
[ 0.752680] Loaded X.509 cert 'CentOS Linux Driver update signing key: 7f421ee0ab69461574bb358861dbe77762a4201b'
[ 0.753920] Loaded X.509 cert 'CentOS Linux kernel signing key: 37af3bf21974ad2408256639ae87c7823aa3c04c'
[ 0.754900] registered taskstats version 1
[ 0.755386] page_owner is disabled
[ 0.757914] Key type trusted registered
[ 0.760451] Key type encrypted registered
[ 0.760900] IMA: No TPM chip found, activating TPM-bypass! (rc=-19)
[ 0.761537] BERT: Boot Error Record Table support is disabled. Enable it by using bert_enable as kernel parameter.
[ 0.762666] Magic number: 5:294:531
[ 0.763277] rtc_cmos rtc_cmos: setting system clock to 2021-09-07 12:31:55 UTC (1631017915)
[ 0.764899] Freeing unused kernel memory: 1980k freed
[ 0.765544] Write protecting the kernel read-only data: 12288k
[ 0.766800] Freeing unused kernel memory: 384k freed
[ 0.768148] Freeing unused kernel memory: 532k freed
[ 0.771367] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.772243] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.772805] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.773949] systemd[1]: systemd 219 running in system mode. (+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 -SECCOMP +BLKID +ELFUTILS +KMOD +IDN)
[ 0.775719] systemd[1]: Detected virtualization kvm.
[ 0.776169] systemd[1]: Detected architecture x86-64.
[ 0.776784] systemd[1]: Running in initial RAM disk.
[ 0.777316] systemd[1]: Set hostname to <localhost.localdomain>.
[ 0.805167] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.806384] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.807368] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.808608] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.809300] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.810193] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.811026] random: systemd: uninitialized urandom read (16 bytes read)
[ 0.814522] systemd[1]: Reached target Local File Systems.
[ 0.815508] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[ 0.816445] systemd[1]: Reached target Paths.
[ 0.817023] systemd[1]: Reached target Timers.
[ 0.817495] systemd[1]: Reached target Swap.
[ 0.818363] systemd[1]: Created slice Root Slice.
[ 0.819000] systemd[1]: Created slice System Slice.
[ 0.819525] systemd[1]: Listening on udev Kernel Socket.
[ 0.820087] systemd[1]: Reached target Slices.
[ 0.820887] systemd[1]: Listening on Journal Socket.
[ 0.822785] systemd[1]: Starting Journal Service...
[ 0.824005] systemd[1]: Starting Apply Kernel Variables...
[ 0.824959] systemd[1]: Starting Create list of required static device nodes for the current kernel...
[ 0.826873] systemd[1]: Listening on udev Control Socket.
[ 0.827658] systemd[1]: Reached target Sockets.
[ 0.828717] systemd[1]: Started Apply Kernel Variables.
[ 0.830056] systemd[1]: Started Create list of required static device nodes for the current kernel.
[ 0.831680] systemd[1]: Started Journal Service.
[ 0.944061] psmouse serio1: alps: Unknown ALPS touchpad: E7=10 00 64, EC=10 00 64
[ 0.947050] input: ImExPS/2 Generic Explorer Mouse as /devices/platform/i8042/serio1/input/input3
[ 1.019728] libata version 3.00 loaded.
[ 1.025472] ata_piix 0000:00:01.1: version 2.13
[ 1.033762] scsi host0: ata_piix
[ 1.045287] scsi host1: ata_piix
[ 1.045970] ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0xd000 irq 14
[ 1.046784] ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0xd008 irq 15
[ 1.210277] ata1.00: ATA-6: VBOX HARDDISK, 1.0, max UDMA/133
[ 1.210870] ata1.00: 83886080 sectors, multi 128: LBA
[ 1.211714] ata1.00: configured for UDMA/33
[ 1.212279] scsi 0:0:0:0: Direct-Access ATA VBOX HARDDISK 1.0 PQ: 0 ANSI: 5
[ 1.248130] sd 0:0:0:0: [sda] 83886080 512-byte logical blocks: (42.9 GB/40.0 GiB)
[ 1.249360] sd 0:0:0:0: [sda] Write Protect is off
[ 1.249987] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[ 1.250013] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 1.251725] sda: sda1
[ 1.252316] sd 0:0:0:0: [sda] Attached SCSI disk
[ 1.326176] SGI XFS with ACLs, security attributes, no debug enabled
[ 1.333158] XFS (sda1): Mounting V5 Filesystem
[ 1.335137] random: fast init done
[ 1.350355] XFS (sda1): Ending clean mount
[ 1.428377] systemd-journald[103]: Received SIGTERM from PID 1 (systemd).
[ 1.489438] type=1404 audit(1631017916.225:2): enforcing=1 old_enforcing=0 auid=4294967295 ses=4294967295
[ 1.510303] SELinux: 2048 avtab hash slots, 112470 rules.
[ 1.551966] SELinux: 2048 avtab hash slots, 112470 rules.
[ 1.575017] SELinux: 8 users, 14 roles, 5036 types, 318 bools, 1 sens, 1024 cats
[ 1.575020] SELinux: 129 classes, 112470 rules
[ 1.579322] SELinux: Class bpf not defined in policy.
[ 1.579989] SELinux: the above unknown classes and permissions will be allowed
[ 1.580899] SELinux: Completing initialization.
[ 1.580900] SELinux: Setting up existing superblocks.
[ 1.587872] type=1403 audit(1631017916.323:3): policy loaded auid=4294967295 ses=4294967295
[ 1.594951] systemd[1]: Successfully loaded SELinux policy in 105.785ms.
[ 1.630952] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 1.631736] systemd[1]: Inserted module 'ip_tables'
[ 1.647919] systemd[1]: Relabelled /dev, /run and /sys/fs/cgroup in 12.796ms.
[ 2.152094] Adding 2097148k swap on /swapfile. Priority:-2 extents:1 across:2097148k FS
[ 2.237867] systemd-journald[1207]: Received request to flush runtime journal from PID 1
[ 2.420672] piix4_smbus 0000:00:07.0: SMBus Host Controller at 0x4100, revision 0
[ 2.435195] e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI
[ 2.435964] e1000: Copyright (c) 1999-2006 Intel Corporation.
[ 2.468062] ACPI: Video Device [GFX0] (multi-head: yes rom: no post: no)
[ 2.470048] input: Video Bus as /devices/LNXSYSTM:00/device:00/PNP0A03:00/LNXVIDEO:00/input/input4
[ 2.473433] sd 0:0:0:0: Attached scsi generic sg0 type 0
[ 2.536300] input: PC Speaker as /devices/platform/pcspkr/input/input5
[ 2.549653] cryptd: max_cpu_qlen set to 1000
[ 2.560884] AVX2 version of gcm_enc/dec engaged.
[ 2.561473] AES CTR mode by8 optimization enabled
[ 2.593519] alg: No test for __gcm-aes-aesni (__driver-gcm-aes-aesni)
[ 2.594910] alg: No test for __generic-gcm-aes-aesni (__driver-generic-gcm-aes-aesni)
[ 2.620439] random: crng init done
[ 2.792398] RPC: Registered named UNIX socket transport module.
[ 2.793064] RPC: Registered udp transport module.
[ 2.793624] RPC: Registered tcp transport module.
[ 2.794163] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 2.799185] type=1305 audit(1631017917.535:4): audit_pid=2304 old=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:auditd_t:s0 res=1
[ 2.815387] ppdev: user-space parallel port driver
[ 2.889034] e1000 0000:00:03.0 eth0: (PCI:33MHz:32-bit) 52:54:00:8a:fe:e6
[ 2.889626] e1000 0000:00:03.0 eth0: Intel(R) PRO/1000 Network Connection
[ 3.388008] e1000 0000:00:08.0 eth1: (PCI:33MHz:32-bit) 08:00:27:f6:0b:4f
[ 3.388688] e1000 0000:00:08.0 eth1: Intel(R) PRO/1000 Network Connection

View File

@@ -0,0 +1,447 @@
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 2.5 present.
10 structures occupying 450 bytes.
Table at 0x000E1000.
Handle 0x0000, DMI type 0, 20 bytes
BIOS Information
Vendor: innotek GmbH
Version: VirtualBox
Release Date: 12/01/2006
Address: 0xE0000
Runtime Size: 128 kB
ROM Size: 128 kB
Characteristics:
ISA is supported
PCI is supported
Boot from CD is supported
Selectable boot is supported
8042 keyboard services are supported (int 9h)
CGA/mono video services are supported (int 10h)
ACPI is supported
Handle 0x0001, DMI type 1, 27 bytes
System Information
Manufacturer: innotek GmbH
Product Name: VirtualBox
Version: 1.2
Serial Number: 0
UUID: 3df70c01-ba7f-3247-9949-e6f4fb0736e0
Wake-up Type: Power Switch
SKU Number: Not Specified
Family: Virtual Machine
Handle 0x0008, DMI type 2, 15 bytes
Base Board Information
Manufacturer: Oracle Corporation
Product Name: VirtualBox
Version: 1.2
Serial Number: 0
Asset Tag: Not Specified
Features:
Board is a hosting board
Location In Chassis: Not Specified
Chassis Handle: 0x0003
Type: Motherboard
Contained Object Handles: 0
Handle 0x0003, DMI type 3, 13 bytes
Chassis Information
Manufacturer: Oracle Corporation
Type: Other
Lock: Not Present
Version: Not Specified
Serial Number: Not Specified
Asset Tag: Not Specified
Boot-up State: Safe
Power Supply State: Safe
Thermal State: Safe
Security Status: None
Handle 0x1100, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: DIMM
Set: 1
Locator: DIMM_A1
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous Registered (Buffered)
Speed: 1333 MT/s
Manufacturer: 002C00B3002C
Serial Number: E76AAAAA
Asset Tag: 0F130763
Part Number: 36KSF1G72PZ-1G4M1
Rank: 2
Configured Memory Speed: 1333 MT/s
Handle 0x1101, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: DIMM
Set: 1
Locator: DIMM_A2
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous Registered (Buffered)
Speed: 1333 MT/s
Manufacturer: 002C00B3002C
Serial Number: E76AAAAA
Asset Tag: 0F130763
Part Number: 36KSF1G72PZ-1G4M1
Rank: 2
Configured Memory Speed: 1333 MT/s
Handle 0x1102, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 1
Locator: DIMM_A3
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1103, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 1
Locator: DIMM_A4
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1104, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 2
Locator: DIMM_A5
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1105, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 2
Locator: DIMM_A6
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1106, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 2
Locator: DIMM_A7
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1107, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 2
Locator: DIMM_A8
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1108, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 3
Locator: DIMM_A9
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1109, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 3
Locator: DIMM_A10
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x110A, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 3
Locator: DIMM_A11
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x110B, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 3
Locator: DIMM_A12
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x110C, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: DIMM
Set: 4
Locator: DIMM_B1
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous Registered (Buffered)
Speed: 1333 MT/s
Manufacturer: 002C00B3002C
Serial Number: E76AAAAA
Asset Tag: 0F130763
Part Number: 36KSF1G72PZ-1G4M1
Rank: 2
Configured Memory Speed: 1333 MT/s
Handle 0x110D, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: DIMM
Set: 4
Locator: DIMM_B2
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous Registered (Buffered)
Speed: 1333 MT/s
Manufacturer: 002C00B3002C
Serial Number: E76AAAAA
Asset Tag: 0F130763
Part Number: 36KSF1G72PZ-1G4M1
Rank: 2
Configured Memory Speed: 1333 MT/s
Handle 0x110E, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 4
Locator: DIMM_B3
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x110F, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 4
Locator: DIMM_B4
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1110, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 5
Locator: DIMM_B5
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1111, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 5
Locator: DIMM_B6
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1112, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 5
Locator: DIMM_B7
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1113, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 5
Locator: DIMM_B8
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1114, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 6
Locator: DIMM_B9
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1115, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 6
Locator: DIMM_B10
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1116, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 6
Locator: DIMM_B11
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x1117, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 6
Locator: DIMM_B12
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous
Handle 0x0007, DMI type 126, 42 bytes
Inactive
Handle 0x0005, DMI type 126, 15 bytes
Inactive
Handle 0x0006, DMI type 126, 28 bytes
Inactive
Handle 0x0002, DMI type 11, 7 bytes
OEM Strings
String 1: vboxVer_6.1.26
String 2: vboxRev_145957
Handle 0x0008, DMI type 128, 8 bytes
OEM-specific Type
Header and Data:
80 08 08 00 27 30 1F 00
Handle 0xFEFF, DMI type 127, 4 bytes
End Of Table

View File

@@ -0,0 +1,30 @@
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
14594098 94298 0 0 0 0
TX: bytes packets errors dropped carrier collsns
14594098 94298 0 0 0 0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:8a:fe:e6 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
270849 1770 0 0 0 0
TX: bytes packets errors dropped carrier collsns
177144 1245 0 0 0 0
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:f6:0b:4f brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
40824 189 0 0 0 0
TX: bytes packets errors dropped carrier collsns
1392 18 0 0 0 0
4: br-8a44fb82c9f4: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default
link/ether 02:42:39:48:87:37 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
0 0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
0 0 0 0 0 0
5: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default
link/ether 02:42:20:31:d8:8e brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
0 0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
0 0 0 0 0 0

View File

@@ -0,0 +1,9 @@
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
00:04.0 System peripheral: InnoTek Systemberatung GmbH VirtualBox Guest Service
00:05.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01)
00:07.0 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
00:08.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)

View File

@@ -0,0 +1,49 @@
total used free shared buffers cache available
Mem: 3973066752 402309120 3153379328 34504704 2117632 415260672 3272974336
Swap: 2147479552 0 2147479552
MemTotal: 3879948 kB
MemFree: 3079472 kB
MemAvailable: 3196264 kB
Buffers: 2068 kB
Cached: 331616 kB
SwapCached: 0 kB
Active: 338692 kB
Inactive: 280952 kB
Active(anon): 287256 kB
Inactive(anon): 32680 kB
Active(file): 51436 kB
Inactive(file): 248272 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2097148 kB
SwapFree: 2097148 kB
Dirty: 136 kB
Writeback: 0 kB
AnonPages: 285920 kB
Mapped: 99584 kB
Shmem: 33696 kB
Slab: 73912 kB
SReclaimable: 39444 kB
SUnreclaim: 34468 kB
KernelStack: 3392 kB
PageTables: 10116 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 4037120 kB
Committed_AS: 3675664 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 11388 kB
VmallocChunk: 34359724412 kB
Percpu: 816 kB
HardwareCorrupted: 0 kB
AnonHugePages: 174080 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 81856 kB
DirectMap2M: 4112384 kB

View File

@@ -0,0 +1,18 @@
/dev/sda1 40G 31G 9.2G 78% / on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
devtmpfs 1.9G 0 1.9G 0% /dev on /dev type devtmpfs (rw,nosuid,seclabel,size=1932568k,nr_inodes=483142,mode=755)
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=387996k,mode=700,uid=1000,gid=1000)
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
tmpfs 1.9G 13M 1.9G 1% /dev/shm on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
tmpfs 1.9G 13M 1.9G 1% /dev/shm on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs 1.9G 13M 1.9G 1% /dev/shm on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=387996k,mode=700,uid=1000,gid=1000)
tmpfs 1.9G 13M 1.9G 1% /dev/shm on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
tmpfs 1.9G 8.6M 1.9G 1% /run on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
tmpfs 1.9G 8.6M 1.9G 1% /run on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs 1.9G 8.6M 1.9G 1% /run on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=387996k,mode=700,uid=1000,gid=1000)
tmpfs 1.9G 8.6M 1.9G 1% /run on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
tmpfs 379M 0 379M 0% /run/user/1000 on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
tmpfs 379M 0 379M 0% /run/user/1000 on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs 379M 0 379M 0% /run/user/1000 on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=387996k,mode=700,uid=1000,gid=1000)
tmpfs 379M 0 379M 0% /run/user/1000 on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)

View File

@@ -0,0 +1,67 @@
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 2824/postmaster
tcp 0 0 0.0.0.0:8601 0.0.0.0:* LISTEN 3106/ExeMgr
tcp 0 0 0.0.0.0:8700 0.0.0.0:* LISTEN 2986/workernode
tcp 0 0 0.0.0.0:8612 0.0.0.0:* LISTEN 3138/DDLProc
tcp 0 0 0.0.0.0:8614 0.0.0.0:* LISTEN 3118/DMLProc
tcp 0 0 0.0.0.0:8616 0.0.0.0:* LISTEN 3026/controllernode
tcp 0 0 0.0.0.0:8620 0.0.0.0:* LISTEN 3056/PrimProc
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 0.0.0.0:8630 0.0.0.0:* LISTEN 3092/WriteEngineSer
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2798/sshd
tcp 0 0 127.0.0.1:39514 127.0.0.1:8700 ESTABLISHED 3026/controllernode
tcp 0 0 192.168.10.11:46340 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46342 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46328 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46344 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46368 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:40816 192.168.10.11:5432 ESTABLISHED 2854/repmgrd
tcp 0 0 127.0.0.1:8620 127.0.0.1:58962 ESTABLISHED 3056/PrimProc
tcp 0 0 192.168.10.11:46346 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46362 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46366 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46360 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46326 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46370 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46320 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 127.0.0.1:58984 127.0.0.1:8620 ESTABLISHED 3138/DDLProc
tcp 0 0 127.0.0.1:8616 127.0.0.1:38974 ESTABLISHED 3026/controllernode
tcp 0 0 10.0.2.15:37944 104.22.8.28:443 TIME_WAIT -
tcp 0 0 192.168.10.11:46358 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 127.0.0.1:8616 127.0.0.1:38954 ESTABLISHED 3026/controllernode
tcp 0 0 127.0.0.1:58964 127.0.0.1:8620 ESTABLISHED 3106/ExeMgr
tcp 0 0 192.168.10.11:46330 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 127.0.0.1:8620 127.0.0.1:58964 ESTABLISHED 3056/PrimProc
tcp 0 0 127.0.0.1:8616 127.0.0.1:38956 ESTABLISHED 3026/controllernode
tcp 0 0 192.168.10.11:46314 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 127.0.0.1:8700 127.0.0.1:39514 ESTABLISHED 2986/workernode
tcp 0 0 127.0.0.1:8616 127.0.0.1:38964 ESTABLISHED 3026/controllernode
tcp 0 0 192.168.10.11:46364 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46318 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46372 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46336 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46334 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46356 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 127.0.0.1:38954 127.0.0.1:8616 ESTABLISHED 3106/ExeMgr
tcp 0 0 127.0.0.1:58962 127.0.0.1:8620 ESTABLISHED 3106/ExeMgr
tcp 0 0 127.0.0.1:8616 127.0.0.1:38966 ESTABLISHED 3026/controllernode
tcp 0 0 127.0.0.1:8620 127.0.0.1:58982 ESTABLISHED 3056/PrimProc
tcp 0 0 127.0.0.1:38956 127.0.0.1:8616 ESTABLISHED 3118/DMLProc
tcp 0 0 192.168.10.11:46322 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 10.0.2.15:22 10.0.2.2:54666 ESTABLISHED 6437/sshd: vagrant
tcp 0 0 192.168.10.11:46316 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46324 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46338 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 127.0.0.1:38974 127.0.0.1:8616 ESTABLISHED 3138/DDLProc
tcp 0 0 192.168.10.11:46352 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 192.168.10.11:46332 192.168.10.11:5432 TIME_WAIT -
tcp 0 0 10.0.2.15:53180 74.121.199.231:80 TIME_WAIT -
tcp 0 0 192.168.10.11:5432 192.168.10.11:40816 ESTABLISHED 2845/postgres: repm
tcp 0 0 127.0.0.1:38964 127.0.0.1:8616 ESTABLISHED 3118/DMLProc
tcp 0 0 127.0.0.1:8620 127.0.0.1:58984 ESTABLISHED 3056/PrimProc
tcp 0 0 127.0.0.1:38966 127.0.0.1:8616 ESTABLISHED 3118/DMLProc
tcp 0 0 127.0.0.1:58982 127.0.0.1:8620 ESTABLISHED 3118/DMLProc
tcp6 0 0 :::5432 :::* LISTEN 2824/postmaster
tcp6 0 0 :::111 :::* LISTEN 1/systemd
tcp6 0 0 :::22 :::* LISTEN 2798/sshd

View File

@@ -0,0 +1,56 @@
Settings for br-8a44fb82c9f4:
Link detected: no
Settings for docker0:
Link detected: no
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: umbg
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
Settings for eth1:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: umbg
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes

View File

@@ -0,0 +1,2 @@
PID OOM COMMAND
2798 -17 sshd

View File

@@ -0,0 +1,10 @@
Disk /dev/sda: 42.9 GB, 42949672960 bytes, 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0009ef88
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 83886079 41942016 83 Linux

View File

@@ -0,0 +1,100 @@
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
stepping : 11
cpu MHz : 2043.942
cache size : 8192 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase avx2 invpcid rdseed clflushopt md_clear flush_l1d arch_capabilities
bogomips : 4087.88
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
stepping : 11
cpu MHz : 2043.942
cache size : 8192 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 4
apicid : 1
initial apicid : 1
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase avx2 invpcid rdseed clflushopt md_clear flush_l1d arch_capabilities
bogomips : 4087.88
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 2
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
stepping : 11
cpu MHz : 2043.942
cache size : 8192 KB
physical id : 0
siblings : 4
core id : 2
cpu cores : 4
apicid : 2
initial apicid : 2
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase avx2 invpcid rdseed clflushopt md_clear flush_l1d arch_capabilities
bogomips : 4087.88
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
stepping : 11
cpu MHz : 2043.942
cache size : 8192 KB
physical id : 0
siblings : 4
core id : 3
cpu cores : 4
apicid : 3
initial apicid : 3
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase avx2 invpcid rdseed clflushopt md_clear flush_l1d arch_capabilities
bogomips : 4087.88
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

View File

@@ -0,0 +1,10 @@
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 193676 6696 4156 S 0.0 0.2 0:01.48 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:+
5 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kworker/u8+
6 root 20 0 0 0 0 S 0.0 0.0 0:00.33 ksoftirqd/0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.02 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 R 0.0 0.0 0:02.34 rcu_sched
10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-dr+

View File

@@ -0,0 +1,22 @@
platform Linux
hostname localhost.localdomain
kernel 3.10.0-1160.31.1.el7.x86_64
release CentOS Linux release 7.6.1810 (Core)
CPU_ARCH 64-bit
OS_ARCH 64-bit
virt KVM
vendor innotek GmbH
system innotek GmbH; VirtualBox; v1.2 (Other)
servicetag 0
rss 487407616
raid_controller No RAID controller detected
threading NPTL 2.17
getenforce Enforcing
swappiness 30
dirtypolicy 30, 10
dirtystatus 0, 0
internal::disks sda
internal::sda [noop] 128
dentry-state 44507 24627 45 0 6751 0
file-nr 1824 0 380072
inode-nr 37935 335

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1 @@
14:06:23 up 1:34, 1 user, load average: 0.10, 0.04, 0.05

View File

@@ -0,0 +1,7 @@
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 3078356 2068 407492 0 0 15 2 34 27 0 0 100 0 0
0 0 0 3078048 2068 407912 0 0 92 20 1724 1374 3 5 93 0 0
0 0 0 3078304 2068 407872 0 0 0 0 245 171 0 0 99 0 0
0 0 0 3078320 2068 407868 0 0 0 0 160 109 0 0 100 0 0
0 0 0 3078700 2068 407864 0 0 0 0 133 100 0 0 100 0 0

View File

@@ -80,6 +80,6 @@ Unable to collect information
1 0 0 0 0 100 800 50 67 33 0 0 0
1 0 0 0 0 0 1000 35 80 20 0 0 0
1 0 0 0 0 0 900 45 62 38 0 0 0
# Memory mamagement ##########################################
# Memory management ##########################################
Transparent huge pages are enabled.
# The End ####################################################

View File

@@ -77,6 +77,6 @@ Unable to collect information
1 0 0 0 0 0 800 35 73 27 0 0 0
1 0 0 0 0 0 900 35 78 22 0 0 0
2 0 0 0 0 0 700 20 78 22 0 0 0
# Memory mamagement ##########################################
# Memory management ##########################################
Transparent huge pages are enabled.
# The End ####################################################

View File

@@ -0,0 +1,162 @@
Hostname | localhost.localdomain
Uptime | 1:34, 1 user, load average: 0.10, 0.04, 0.05
System | innotek GmbH; VirtualBox; v1.2 (Other)
Service Tag | 0
Platform | Linux
Release | CentOS Linux release 7.6.1810 (Core)
Kernel | 3.10.0-1160.31.1.el7.x86_64
Architecture | CPU = 64-bit, OS = 64-bit
Threading | NPTL 2.17
SELinux | Enforcing
Virtualized | KVM
# Processor ##################################################
Processors | physical = 1, cores = 4, virtual = 4, hyperthreading = no
Speeds | 4x2043.942
Models | 4xIntel(R) Core(TM) i7-8565U CPU @ 1.80GHz
Caches | 4x8192 KB
# Memory #####################################################
Total | 3.7G
Free | 2.9G
Used | physical = 383.7M, swap allocated = 2.0G, swap used = 0.0, virtual = 383.7M
Shared | 32.9M
Buffers | 2.0M
Caches | 396.0M
Dirty | 136 kB
UsedRSS | 464.8M
Swappiness | 30
DirtyPolicy | 30, 10
DirtyStatus | 0, 0
Locator Size Speed Form Factor Type Type Detail
========= ======== ================= ============= ============= ===========
DIMM_A1 8192 MB 1333 MT/s DIMM DDR3 Synchronous Registered (Buffered)
DIMM_A2 8192 MB 1333 MT/s DIMM DDR3 Synchronous Registered (Buffered)
DIMM_B1 8192 MB 1333 MT/s DIMM DDR3 Synchronous Registered (Buffered)
DIMM_B2 8192 MB 1333 MT/s DIMM DDR3 Synchronous Registered (Buffered)
DIMM_A10 {EMPTY} DIMM DDR3 Synchronous
DIMM_A11 {EMPTY} DIMM DDR3 Synchronous
DIMM_A12 {EMPTY} DIMM DDR3 Synchronous
DIMM_A3 {EMPTY} DIMM DDR3 Synchronous
DIMM_A4 {EMPTY} DIMM DDR3 Synchronous
DIMM_A5 {EMPTY} DIMM DDR3 Synchronous
DIMM_A6 {EMPTY} DIMM DDR3 Synchronous
DIMM_A7 {EMPTY} DIMM DDR3 Synchronous
DIMM_A8 {EMPTY} DIMM DDR3 Synchronous
DIMM_A9 {EMPTY} DIMM DDR3 Synchronous
DIMM_B10 {EMPTY} DIMM DDR3 Synchronous
DIMM_B11 {EMPTY} DIMM DDR3 Synchronous
DIMM_B12 {EMPTY} DIMM DDR3 Synchronous
DIMM_B3 {EMPTY} DIMM DDR3 Synchronous
DIMM_B4 {EMPTY} DIMM DDR3 Synchronous
DIMM_B5 {EMPTY} DIMM DDR3 Synchronous
DIMM_B6 {EMPTY} DIMM DDR3 Synchronous
DIMM_B7 {EMPTY} DIMM DDR3 Synchronous
DIMM_B8 {EMPTY} DIMM DDR3 Synchronous
DIMM_B9 {EMPTY} DIMM DDR3 Synchronous
# Mounted Filesystems ########################################
Filesystem Size Used Type Opts Mountpoint
/dev/sda1 40G 78% xfs rw,relatime,seclabel,attr2,inode64,noquota /
devtmpfs 1.9G 0% devtmpfs rw,nosuid,seclabel,size=1932568k,nr_inodes=483142,mode=755 /dev
tmpfs 1.9G 0% tmpfs rw,nosuid,nodev,seclabel /sys/fs/cgroup
tmpfs 1.9G 0% tmpfs rw,nosuid,nodev,seclabel,mode=755 /sys/fs/cgroup
tmpfs 1.9G 0% tmpfs rw,nosuid,nodev,relatime,seclabel,size=387996k,mode=700,uid=1000,gid=1000 /sys/fs/cgroup
tmpfs 1.9G 0% tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755 /sys/fs/cgroup
tmpfs 1.9G 1% tmpfs rw,nosuid,nodev,seclabel /dev/shm
tmpfs 1.9G 1% tmpfs rw,nosuid,nodev,seclabel,mode=755 /dev/shm
tmpfs 1.9G 1% tmpfs rw,nosuid,nodev,relatime,seclabel,size=387996k,mode=700,uid=1000,gid=1000 /dev/shm
tmpfs 1.9G 1% tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755 /dev/shm
tmpfs 1.9G 1% tmpfs rw,nosuid,nodev,seclabel /run
tmpfs 1.9G 1% tmpfs rw,nosuid,nodev,seclabel,mode=755 /run
tmpfs 1.9G 1% tmpfs rw,nosuid,nodev,relatime,seclabel,size=387996k,mode=700,uid=1000,gid=1000 /run
tmpfs 1.9G 1% tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755 /run
tmpfs 379M 0% tmpfs rw,nosuid,nodev,seclabel /run/user/1000
tmpfs 379M 0% tmpfs rw,nosuid,nodev,seclabel,mode=755 /run/user/1000
tmpfs 379M 0% tmpfs rw,nosuid,nodev,relatime,seclabel,size=387996k,mode=700,uid=1000,gid=1000 /run/user/1000
tmpfs 379M 0% tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755 /run/user/1000
# Disk Schedulers And Queue Size #############################
sda | [noop] 128
# Disk Partioning ############################################
Device Type Start End Size
============ ==== ========== ========== ==================
/dev/sda Disk 42949672960
/dev/sda1 Part 2048 83886079 42948623872
# Kernel Inode State #########################################
dentry-state | 44507 24627 45 0 6751 0
file-nr | 1824 0 380072
inode-nr | 37935 335
# LVM Volumes ################################################
Unable to collect information
# LVM Volume Groups ##########################################
Unable to collect information
# RAID Controller ############################################
Controller | No RAID controller detected
# Network Config #############################################
Controller | Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
Controller | Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
FIN Timeout | 60
Port Range | 60999
# Interface Statistics #######################################
interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors
========= ========= ========== ========== ========== ========== ==========
lo 15000000 90000 0 15000000 90000 0
eth0 250000 1750 0 175000 1250 0
eth1 40000 200 0 1500 20 0
br-8a44fb82c9f4 0 0 0 0 0 0
docker0 0 0 0 0 0 0
# Network Devices ############################################
Device Speed Duplex
========= ========= =========
eth0 1000Mb/s Full
eth1 1000Mb/s Full
docker0
br-8a44fb82c9f4
# Network Connections ########################################
Connections from remote IP addresses
10.0.2.2 1
74.121.199.231 1
104.22.8.28 1
127.0.0.1 20
192.168.10.11 30
Connections to local IP addresses
10.0.2.15 3
127.0.0.1 20
192.168.10.11 30
Connections to top 10 local ports
46372 1
53180 1
5432 1
58962 1
58964 1
58982 1
58984 1
8616 5
8620 4
8700 1
States of connections
ESTABLISHED 25
LISTEN 15
TIME_WAIT 30
# Top Processes ##############################################
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 193676 6696 4156 S 0.0 0.2 0:01.48 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:+
5 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kworker/u8+
6 root 20 0 0 0 0 S 0.0 0.0 0:00.33 ksoftirqd/0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.02 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 R 0.0 0.0 0:02.34 rcu_sched
10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-dr+
# Notable Processes ##########################################
PID OOM COMMAND
2798 -17 sshd
# Simplified and fuzzy rounded vmstat (wait please) ##########
procs ---swap-- -----io---- ---system---- --------cpu--------
r b si so bi bo ir cs us sy il wa st
1 0 0 0 15 2 35 25 0 0 100 0 0
0 0 0 0 90 20 1750 1250 3 5 93 0 0
0 0 0 0 0 0 250 175 0 0 99 0 0
0 0 0 0 0 0 150 100 0 0 100 0 0
0 0 0 0 0 0 125 100 0 0 100 0 0
# Memory management ##########################################
Transparent huge pages are enabled.
# The End ####################################################