Repository: VictoriaMetrics/VictoriaMetrics
Pull request #3804 (2023-02-12 21:25:55)

app,lib: fix typos in comments
This PR fixes typos in comments from `app` and `lib` directories.

codecov[bot]: # [Codecov](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics) Report
Base: **57.52**% // Head: **57.45**% // Decreases project coverage by **`-0.08%`** :warning:
> Coverage data is based on head [(`8b911b4`)](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics) compared to base [(`438b2e1`)](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/commit/438b2e11bd265df30cf36683a55a42d8a51a6f23?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics).
> Patch coverage: 46.15% of modified lines in pull request are covered.

<details><summary>Additional details and impacted files</summary>


```diff
@@            Coverage Diff             @@
##           master    #3804      +/-   ##
==========================================
- Coverage   57.52%   57.45%   -0.08%     
==========================================
  Files         313      313              
  Lines       52575    52575              
==========================================
- Hits        30246    30209      -37     
- Misses      20435    20463      +28     
- Partials     1894     1903       +9     
```


| [Impacted Files](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics) | Coverage Δ | |
|---|---|---|
| [app/vmalert/notifier/alert.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3ZtYWxlcnQvbm90aWZpZXIvYWxlcnQuZ28=) | `51.16% <ø> (ø)` | |
| [app/vmalert/notifier/config.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3ZtYWxlcnQvbm90aWZpZXIvY29uZmlnLmdv) | `59.04% <ø> (ø)` | |
| [app/vmauth/auth\_config.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3ZtYXV0aC9hdXRoX2NvbmZpZy5nbw==) | `61.51% <ø> (ø)` | |
| [app/vmauth/target\_url.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3ZtYXV0aC90YXJnZXRfdXJsLmdv) | `87.23% <0.00%> (ø)` | |
| [app/vmselect/graphiteql/parser.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3Ztc2VsZWN0L2dyYXBoaXRlcWwvcGFyc2VyLmdv) | `87.91% <ø> (ø)` | |
| [app/vmselect/netstorage/netstorage.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3Ztc2VsZWN0L25ldHN0b3JhZ2UvbmV0c3RvcmFnZS5nbw==) | `12.97% <0.00%> (ø)` | |
| [app/vmselect/promql/eval.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-YXBwL3Ztc2VsZWN0L3Byb21xbC9ldmFsLmdv) | `61.87% <ø> (ø)` | |
| [lib/awsapi/config.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-bGliL2F3c2FwaS9jb25maWcuZ28=) | `9.89% <ø> (ø)` | |
| [lib/fs/fs.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-bGliL2ZzL2ZzLmdv) | `5.15% <0.00%> (ø)` | |
| [lib/mergeset/encoding.go](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics#diff-bGliL21lcmdlc2V0L2VuY29kaW5nLmdv) | `78.26% <ø> (ø)` | |
| ... and [34 more](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics) | |

Help us with your feedback. Take ten seconds to tell us [how you rate us](https://about.codecov.io/nps?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics). Have a feature suggestion? [Share it here.](https://app.codecov.io/gh/feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics)

</details>

[:umbrella: View full report at Codecov](https://codecov.io/gh/VictoriaMetrics/VictoriaMetrics/pull/3804?src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics).   
:loudspeaker: Do you have feedback about the report comment? [Let us know in this issue](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=VictoriaMetrics).


Patch:
diff --git a/app/vmalert/notifier/alert.go b/app/vmalert/notifier/alert.go
index 35a68c54c..f26cfcfa3 100644
--- a/app/vmalert/notifier/alert.go
+++ b/app/vmalert/notifier/alert.go
@@ -41,7 +41,7 @@ type Alert struct {
 	LastSent time.Time
 	// Value stores the value returned from evaluating expression from Expr field
 	Value float64
-	// ID is the unique identifer for the Alert
+	// ID is the unique identifier for the Alert
 	ID uint64
 	// Restored is true if Alert was restored after restart
 	Restored bool
diff --git a/app/vmalert/notifier/config.go b/app/vmalert/notifier/config.go
index ac60a4965..d6419b900 100644
--- a/app/vmalert/notifier/config.go
+++ b/app/vmalert/notifier/config.go
@@ -29,7 +29,7 @@ type Config struct {
 	// ConsulSDConfigs contains list of settings for service discovery via Consul
 	// see https://prometheus.io/docs/prometheus/latest/configuration/configuration/#consul_sd_config
 	ConsulSDConfigs []consul.SDConfig `yaml:"consul_sd_configs,omitempty"`
-	// DNSSDConfigs ontains list of settings for service discovery via DNS.
+	// DNSSDConfigs contains list of settings for service discovery via DNS.
 	// See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#dns_sd_config
 	DNSSDConfigs []dns.SDConfig `yaml:"dns_sd_configs,omitempty"`
 
diff --git a/app/vmalert/templates/template.go b/app/vmalert/templates/template.go
index c932b5777..045a154ff 100644
--- a/app/vmalert/templates/template.go
+++ b/app/vmalert/templates/template.go
@@ -225,7 +225,7 @@ func templateFuncs() textTpl.FuncMap {
 		"toLower": strings.ToLower,
 
 		// crlfEscape replaces '\n' and '\r' chars with `\\n` and `\\r`.
-		// This funcion is deprectated.
+		// This function is deprecated.
 		//
 		// It is better to use quotesEscape, jsonEscape, queryEscape or pathEscape instead -
 		// these functions properly escape `\n` and `\r` chars according to their purpose.
diff --git a/app/vmauth/auth_config.go b/app/vmauth/auth_config.go
index 5031c67a0..0c02a9d1c 100644
--- a/app/vmauth/auth_config.go
+++ b/app/vmauth/auth_config.go
@@ -110,7 +110,7 @@ type SrcPath struct {
 	re        *regexp.Regexp
 }
 
-// URLPrefix represents pased `url_prefix`
+// URLPrefix represents passed `url_prefix`
 type URLPrefix struct {
 	n   uint32
 	bus []*backendURL
diff --git a/app/vmauth/target_url.go b/app/vmauth/target_url.go
index a2849b88e..b456c554a 100644
--- a/app/vmauth/target_url.go
+++ b/app/vmauth/target_url.go
@@ -50,7 +50,7 @@ func normalizeURL(uOrig *url.URL) *url.URL {
 	// Prevent from attacks with using `..` in r.URL.Path
 	u.Path = path.Clean(u.Path)
 	if !strings.HasSuffix(u.Path, "/") && strings.HasSuffix(uOrig.Path, "/") {
-		// The path.Clean() removes traling slash.
+		// The path.Clean() removes trailing slash.
 		// Return it back if needed.
 		// This should fix https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1752
 		u.Path += "/"
diff --git a/app/vminsert/prompush/push.go b/app/vminsert/prompush/push.go
index a51e77dc0..fdbbb347b 100644
--- a/app/vminsert/prompush/push.go
+++ b/app/vminsert/prompush/push.go
@@ -21,7 +21,7 @@ func Push(wr *prompbmarshal.WriteRequest) {
 
 	tss := wr.Timeseries
 	for len(tss) > 0 {
-		// Process big tss in smaller blocks in order to reduce maxmimum memory usage
+		// Process big tss in smaller blocks in order to reduce maximum memory usage
 		samplesCount := 0
 		i := 0
 		for i < len(tss) {
diff --git a/app/vmselect/graphiteql/parser.go b/app/vmselect/graphiteql/parser.go
index f24a2e8bf..b827c0f0e 100644
--- a/app/vmselect/graphiteql/parser.go
+++ b/app/vmselect/graphiteql/parser.go
@@ -164,7 +164,7 @@ func (p *parser) parseString() (*StringExpr, error) {
 	return se, nil
 }
 
-// StringExpr represents string contant.
+// StringExpr represents string constant.
 type StringExpr struct {
 	// S contains unquoted string contents.
 	S string
diff --git a/app/vmselect/netstorage/netstorage.go b/app/vmselect/netstorage/netstorage.go
index ed43a12e3..b96f3d60d 100644
--- a/app/vmselect/netstorage/netstorage.go
+++ b/app/vmselect/netstorage/netstorage.go
@@ -193,7 +193,7 @@ func getTmpResult() *result {
 func putTmpResult(r *result) {
 	currentTime := fasttime.UnixTimestamp()
 	if cap(r.rs.Values) > 1024*1024 && 4*len(r.rs.Values) < cap(r.rs.Values) && currentTime-r.lastResetTime > 10 {
-		// Reset r.rs in order to preseve memory usage after processing big time series with millions of rows.
+		// Reset r.rs in order to preserve memory usage after processing big time series with millions of rows.
 		r.rs = Result{}
 		r.lastResetTime = currentTime
 	}
@@ -936,7 +936,7 @@ func TagValueSuffixes(qt *querytracer.Tracer, tr storage.TimeRange, tagKey, tagV
 
 // TSDBStatus returns tsdb status according to https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-stats
 //
-// It accepts aribtrary filters on time series in sq.
+// It accepts arbitrary filters on time series in sq.
 func TSDBStatus(qt *querytracer.Tracer, sq *storage.SearchQuery, focusLabel string, topN int, deadline searchutils.Deadline) (*storage.TSDBStatus, error) {
 	qt = qt.NewChild("get tsdb stats: %s, focusLabel=%q, topN=%d", sq, focusLabel, topN)
 	defer qt.Done()
diff --git a/app/vmselect/promql/aggr.go b/app/vmselect/promql/aggr.go
index 84c459915..d432e5806 100644
--- a/app/vmselect/promql/aggr.go
+++ b/app/vmselect/promql/aggr.go
@@ -901,7 +901,7 @@ func quantileSorted(phi float64, values []float64) float64 {
 func aggrFuncMAD(tss []*timeseries) []*timeseries {
 	// Calculate medians for each point across tss.
 	medians := getPerPointMedians(tss)
-	// Calculate MAD values multipled by tolerance for each point across tss.
+	// Calculate MAD values multiplied by tolerance for each point across tss.
 	// See https://en.wikipedia.org/wiki/Median_absolute_deviation
 	mads := getPerPointMADs(tss, medians)
 	tss[0].Values = append(tss[0].Values[:0], mads...)
@@ -920,7 +920,7 @@ func aggrFuncOutliersMAD(afa *aggrFuncArg) ([]*timeseries, error) {
 	afe := func(tss []*timeseries, modifier *metricsql.ModifierExpr) []*timeseries {
 		// Calculate medians for each point across tss.
 		medians := getPerPointMedians(tss)
-		// Calculate MAD values multipled by tolerance for each point across tss.
+		// Calculate MAD values multiplied by tolerance for each point across tss.
 		// See https://en.wikipedia.org/wiki/Median_absolute_deviation
 		mads := getPerPointMADs(tss, medians)
 		for n := range mads {
diff --git a/app/vmselect/promql/eval.go b/app/vmselect/promql/eval.go
index ac364adbe..37bdaed02 100644
--- a/app/vmselect/promql/eval.go
+++ b/app/vmselect/promql/eval.go
@@ -466,7 +466,7 @@ func execBinaryOpArgs(qt *querytracer.Tracer, ec *EvalConfig, exprFirst, exprSec
 	// 1) execute the exprFirst
 	// 2) get common label filters for series returned at step 1
 	// 3) push down the found common label filters to exprSecond. This filters out unneeded series
-	//    during exprSecond exection instead of spending compute resources on extracting and processing these series
+	//    during exprSecond execution instead of spending compute resources on extracting and processing these series
 	//    before they are dropped later when matching time series according to https://prometheus.io/docs/prometheus/latest/querying/operators/#vector-matching
 	// 4) execute the exprSecond with possible additional filters found at step 3
 	//
diff --git a/app/vmselect/promql/rollup.go b/app/vmselect/promql/rollup.go
index 993c24761..2b6dfe6b4 100644
--- a/app/vmselect/promql/rollup.go
+++ b/app/vmselect/promql/rollup.go
@@ -385,7 +385,7 @@ func getRollupFunc(funcName string) newRollupFunc {
 }
 
 type rollupFuncArg struct {
-	// The value preceeding values if it fits staleness interval.
+	// The value preceding values if it fits staleness interval.
 	prevValue float64
 
 	// The timestamp for prevValue.
@@ -397,7 +397,7 @@ type rollupFuncArg struct {
 	// Timestamps for values.
 	timestamps []int64
 
-	// Real value preceeding values without restrictions on staleness interval.
+	// Real value preceding values without restrictions on staleness interval.
 	realPrevValue float64
 
 	// Real value which goes after values.
@@ -587,7 +587,7 @@ func (rc *rollupConfig) doInternal(dstValues []float64, tsm *timeseriesMap, valu
 	if window <= 0 {
 		window = rc.Step
 		if rc.MayAdjustWindow && window < maxPrevInterval {
-			// Adjust lookbehind window only if it isn't set explicilty, e.g. rate(foo).
+			// Adjust lookbehind window only if it isn't set explicitly, e.g. rate(foo).
 			// In the case of missing lookbehind window it should be adjusted in order to return non-empty graph
 			// when the window doesn't cover at least two raw samples (this is what most users expect).
 			//
diff --git a/lib/awsapi/config.go b/lib/awsapi/config.go
index 51290f243..4dc93327f 100644
--- a/lib/awsapi/config.go
+++ b/lib/awsapi/config.go
@@ -239,7 +239,7 @@ func (cfg *Config) getAPICredentials() (*credentials, error) {
 }
 
 // getECSRoleCredentialsByPath makes request to ecs metadata service
-// and retrieves instances credentails
+// and retrieves instances credentials
 // https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html
 func getECSRoleCredentialsByPath(client *http.Client, path string) (*credentials, error) {
 	resp, err := client.Get(path)
@@ -329,7 +329,7 @@ func getMetadataByPath(client *http.Client, apiPath string) ([]byte, error) {
 	return readResponseBody(resp, apiURL)
 }
 
-// getRoleWebIdentityCredentials obtains credentials fo the given roleARN with webToken.
+// getRoleWebIdentityCredentials obtains credentials for the given roleARN with webToken.
 // https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html
 // aws IRSA for kubernetes.
 // https://aws.amazon.com/blogs/opensource/introducing-fine-grained-iam-roles-service-accounts/
@@ -365,7 +365,7 @@ func (cfg *Config) getSTSAPIResponse(action string, reqBuilder func(apiURL strin
 	return readResponseBody(resp, apiURL)
 }
 
-// getRoleARNCredentials obtains credentials fo the given roleARN.
+// getRoleARNCredentials obtains credentials for the given roleARN.
 func (cfg *Config) getRoleARNCredentials(creds *credentials) (*credentials, error) {
 	data, err := cfg.getSTSAPIResponse("AssumeRole", func(apiURL string) (*http.Request, error) {
 		return newSignedGetRequest(apiURL, "sts", cfg.region, creds)
diff --git a/lib/backup/azremote/azblob.go b/lib/backup/azremote/azblob.go
index 22f9649d4..b96df99fb 100644
--- a/lib/backup/azremote/azblob.go
+++ b/lib/backup/azremote/azblob.go
@@ -309,7 +309,7 @@ func (fs *FS) CreateFile(filePath string, data []byte) error {
 	return nil
 }
 
-// HasFile returns ture if filePath exists at fs.
+// HasFile returns true if filePath exists at fs.
 func (fs *FS) HasFile(filePath string) (bool, error) {
 	path := fs.Dir + filePath
 
diff --git a/lib/backup/fscommon/fscommon.go b/lib/backup/fscommon/fscommon.go
index 37d688aeb..bee044290 100644
--- a/lib/backup/fscommon/fscommon.go
+++ b/lib/backup/fscommon/fscommon.go
@@ -250,7 +250,7 @@ func removeEmptyDirsInternal(d *os.File) (bool, error) {
 		return false, nil
 	}
 	// Use os.RemoveAll() instead of os.Remove(), since the dir may contain special files such as flock.lock and restore-in-progress,
-	// which must be ingored.
+	// which must be ignored.
 	if err := os.RemoveAll(dir); err != nil {
 		return false, fmt.Errorf("cannot remove %q: %w", dir, err)
 	}
diff --git a/lib/backup/s3remote/s3.go b/lib/backup/s3remote/s3.go
index a5aac8532..741ea7144 100644
--- a/lib/backup/s3remote/s3.go
+++ b/lib/backup/s3remote/s3.go
@@ -33,7 +33,7 @@ type FS struct {
 	// Directory in the bucket to write to.
 	Dir string
 
-	// Set for using S3-compatible enpoint such as MinIO etc.
+	// Set for using S3-compatible endpoint such as MinIO etc.
 	CustomEndpoint string
 
 	// Force to use path style for s3, true by default.
diff --git a/lib/fs/fs.go b/lib/fs/fs.go
index 92ae1e67d..ba61caed4 100644
--- a/lib/fs/fs.go
+++ b/lib/fs/fs.go
@@ -40,7 +40,7 @@ func WriteFileAndSync(path string, data []byte) error {
 	}
 	if _, err := f.Write(data); err != nil {
 		f.MustClose()
-		// Do not call MustRemoveAll(path), so the user could inpsect
+		// Do not call MustRemoveAll(path), so the user could inspect
 		// the file contents during investigation of the issue.
 		return fmt.Errorf("cannot write %d bytes to %q: %w", len(data), path, err)
 	}
diff --git a/lib/memory/memory_linux.go b/lib/memory/memory_linux.go
index 05b2c190a..ed811b03b 100644
--- a/lib/memory/memory_linux.go
+++ b/lib/memory/memory_linux.go
@@ -20,7 +20,7 @@ func sysTotalMemory() int {
 	}
 	mem := cgroup.GetMemoryLimit()
 	if mem <= 0 || int64(int(mem)) != mem || int(mem) > totalMem {
-		// Try reading hierachical memory limit.
+		// Try reading hierarchical memory limit.
 		// See https://github.com/VictoriaMetrics/VictoriaMetrics/issues/699
 		mem = cgroup.GetHierarchicalMemoryLimit()
 		if mem <= 0 || int64(int(mem)) != mem || int(mem) > totalMem {
diff --git a/lib/mergeset/encoding.go b/lib/mergeset/encoding.go
index b93383e81..a4935d4e6 100644
--- a/lib/mergeset/encoding.go
+++ b/lib/mergeset/encoding.go
@@ -157,7 +157,7 @@ func commonPrefixLen(a, b []byte) int {
 
 // Add adds x to the end of ib.
 //
-// false is returned if x isn't added to ib due to block size contraints.
+// false is returned if x isn't added to ib due to block size constraints.
 func (ib *inmemoryBlock) Add(x []byte) bool {
 	data := ib.data
 	if len(x)+len(data) > maxInmemoryBlockSize {
diff --git a/lib/mergeset/table.go b/lib/mergeset/table.go
index 9ca34650b..0a25506d3 100644
--- a/lib/mergeset/table.go
+++ b/lib/mergeset/table.go
@@ -1665,7 +1665,7 @@ func runTransaction(txnLock *sync.RWMutex, pathPrefix, txnPath string) error {
 			srcPath, dstPath)
 	}
 
-	// Flush pathPrefix directory metadata to the underying storage.
+	// Flush pathPrefix directory metadata to the underlying storage.
 	fs.MustSyncPath(pathPrefix)
 
 	pendingTxnDeletionsWG.Add(1)
diff --git a/lib/promrelabel/graphite.go b/lib/promrelabel/graphite.go
index de39634b2..e962dcdea 100644
--- a/lib/promrelabel/graphite.go
+++ b/lib/promrelabel/graphite.go
@@ -76,7 +76,7 @@ func appendGraphiteMatchTemplateParts(dst []string, s string) []string {
 // Match matches s against gmt.
 //
 // On success it adds matched captures to dst and returns it with true.
-// Of failre it returns false.
+// On failure it returns false.
 func (gmt *graphiteMatchTemplate) Match(dst []string, s string) ([]string, bool) {
 	dst = append(dst, s)
 	parts := gmt.parts
diff --git a/lib/promscrape/discovery/consul/api.go b/lib/promscrape/discovery/consul/api.go
index 5f9d7e224..07c68297c 100644
--- a/lib/promscrape/discovery/consul/api.go
+++ b/lib/promscrape/discovery/consul/api.go
@@ -119,7 +119,7 @@ func getToken(token *promauth.Secret) (string, error) {
 		return string(data), nil
 	}
 	t := os.Getenv("CONSUL_HTTP_TOKEN")
-	// Allow empty token - it shouls work if authorization is disabled in Consul
+	// Allow empty token - it should work if authorization is disabled in Consul
 	return t, nil
 }
 
@@ -145,7 +145,7 @@ func maxWaitTime() time.Duration {
 	// Consul adds random delay up to wait/16, so reduce the timeout in order to keep it below BlockingClientReadTimeout.
 	// See https://www.consul.io/api-docs/features/blocking
 	d -= d / 8
-	// The timeout cannot exceed 10 minuntes. See https://www.consul.io/api-docs/features/blocking
+	// The timeout cannot exceed 10 minutes. See https://www.consul.io/api-docs/features/blocking
 	if d > 10*time.Minute {
 		d = 10 * time.Minute
 	}
@@ -155,7 +155,7 @@ func maxWaitTime() time.Duration {
 	return d
 }
 
-// getBlockingAPIResponse perfoms blocking request to Consul via client and returns response.
+// getBlockingAPIResponse performs blocking request to Consul via client and returns response.
 //
 // See https://www.consul.io/api-docs/features/blocking .
 func getBlockingAPIResponse(ctx context.Context, client *discoveryutils.Client, path string, index int64) ([]byte, int64, error) {
diff --git a/lib/promscrape/discovery/dockerswarm/tasks.go b/lib/promscrape/discovery/dockerswarm/tasks.go
index d9d25a924..82cb009e4 100644
--- a/lib/promscrape/discovery/dockerswarm/tasks.go
+++ b/lib/promscrape/discovery/dockerswarm/tasks.go
@@ -150,7 +150,7 @@ func addTasksLabels(tasks []task, nodesLabels, servicesLabels []*promutils.Label
 	return ms
 }
 
-// addLabels adds lables from src to dst if they contain the given `key: value` pair.
+// addLabels adds labels from src to dst if they contain the given `key: value` pair.
 func addLabels(dst *promutils.Labels, src []*promutils.Labels, key, value string) {
 	for _, m := range src {
 		if m.Get(key) != value {
diff --git a/lib/promscrape/discovery/http/api.go b/lib/promscrape/discovery/http/api.go
index 22d4b4ef3..d8ed5adbf 100644
--- a/lib/promscrape/discovery/http/api.go
+++ b/lib/promscrape/discovery/http/api.go
@@ -22,7 +22,7 @@ type apiConfig struct {
 	parseErrors *metrics.Counter
 }
 
-// httpGroupTarget respresent prometheus GroupTarget
+// httpGroupTarget represent prometheus GroupTarget
 // https://prometheus.io/docs/prometheus/latest/http_sd/
 type httpGroupTarget struct {
 	Targets []string          `json:"targets"`
diff --git a/lib/promscrape/discovery/kubernetes/api_watcher.go b/lib/promscrape/discovery/kubernetes/api_watcher.go
index 932264f89..b50edcefa 100644
--- a/lib/promscrape/discovery/kubernetes/api_watcher.go
+++ b/lib/promscrape/discovery/kubernetes/api_watcher.go
@@ -408,7 +408,7 @@ func (gw *groupWatcher) doRequest(requestURL string) (*http.Response, error) {
 		requestURL = strings.Replace(requestURL, "/apis/networking.k8s.io/v1/", "/apis/networking.k8s.io/v1beta1/", 1)
 	}
 	if strings.Contains(requestURL, "/apis/discovery.k8s.io/v1/") && atomic.LoadUint32(&gw.useDiscoveryV1Beta1) == 1 {
-		// Update discovery URL for old Kuberentes API, which supports only v1beta1 path.
+		// Update discovery URL for old Kubernetes API, which supports only v1beta1 path.
 		requestURL = strings.Replace(requestURL, "/apis/discovery.k8s.io/v1/", "/apis/discovery.k8s.io/v1beta1/", 1)
 	}
 	req, err := http.NewRequest("GET", requestURL, nil)
diff --git a/lib/promscrape/discovery/kubernetes/node.go b/lib/promscrape/discovery/kubernetes/node.go
index c5d5938cd..038c39d96 100644
--- a/lib/promscrape/discovery/kubernetes/node.go
+++ b/lib/promscrape/discovery/kubernetes/node.go
@@ -82,7 +82,7 @@ type NodeDaemonEndpoints struct {
 	KubeletEndpoint DaemonEndpoint
 }
 
-// getTargetLabels returs labels for the given n.
+// getTargetLabels returns labels for the given n.
 //
 // See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#node
 func (n *Node) getTargetLabels(gw *groupWatcher) []*promutils.Labels {
diff --git a/lib/promscrape/discovery/nomad/api.go b/lib/promscrape/discovery/nomad/api.go
index 6c5efcc73..577bca36e 100644
--- a/lib/promscrape/discovery/nomad/api.go
+++ b/lib/promscrape/discovery/nomad/api.go
@@ -104,7 +104,7 @@ func maxWaitTime() time.Duration {
 	// Nomad adds random delay up to wait/16, so reduce the timeout in order to keep it below BlockingClientReadTimeout.
 	// See https://developer.hashicorp.com/nomad/api-docs#blocking-queries
 	d -= d / 16
-	// The timeout cannot exceed 10 minuntes. See https://developer.hashicorp.com/nomad/api-docs#blocking-queries
+	// The timeout cannot exceed 10 minutes. See https://developer.hashicorp.com/nomad/api-docs#blocking-queries
 
 	if d > 10*time.Minute {
 		d = 10 * time.Minute
@@ -115,7 +115,7 @@ func maxWaitTime() time.Duration {
 	return d
 }
 
-// getBlockingAPIResponse perfoms blocking request to Nomad via client and returns response.
+// getBlockingAPIResponse performs blocking request to Nomad via client and returns response.
 // See https://developer.hashicorp.com/nomad/api-docs#blocking-queries .
 func getBlockingAPIResponse(ctx context.Context, client *discoveryutils.Client, path string, index int64) ([]byte, int64, error) {
 	path += "&index=" + strconv.FormatInt(index, 10)
diff --git a/lib/promutils/labels.go b/lib/promutils/labels.go
index c16ba5100..10a254e40 100644
--- a/lib/promutils/labels.go
+++ b/lib/promutils/labels.go
@@ -49,7 +49,7 @@ func (x *Labels) UnmarshalYAML(unmarshal func(interface{}) error) error {
 	return nil
 }
 
-// MarshalJSON returns JSON respresentation for x.
+// MarshalJSON returns JSON representation for x.
 func (x *Labels) MarshalJSON() ([]byte, error) {
 	m := x.ToMap()
 	return json.Marshal(m)
@@ -235,7 +235,7 @@ func (x *Labels) RemoveDuplicates() {
 
 // RemoveMetaLabels removes all the `__meta_` labels from x.
 //
-// See https://www.robustperception.io/life-of-a-label fo details.
+// See https://www.robustperception.io/life-of-a-label for details.
 func (x *Labels) RemoveMetaLabels() {
 	src := x.Labels
 	dst := x.Labels[:0]
diff --git a/lib/protoparser/common/unmarshal_work.go b/lib/protoparser/common/unmarshal_work.go
index 773489a41..22bb8c999 100644
--- a/lib/protoparser/common/unmarshal_work.go
+++ b/lib/protoparser/common/unmarshal_work.go
@@ -40,7 +40,7 @@ func StartUnmarshalWorkers() {
 
 // StopUnmarshalWorkers stops unmarshal workers.
 //
-// No more calles to ScheduleUnmarshalWork are allowed after calling stopUnmarshalWorkers
+// No more calls to ScheduleUnmarshalWork are allowed after calling stopUnmarshalWorkers
 func StopUnmarshalWorkers() {
 	close(unmarshalWorkCh)
 	unmarshalWorkersWG.Wait()
diff --git a/lib/protoparser/datadog/streamparser.go b/lib/protoparser/datadog/streamparser.go
index bdc1ad4d6..633713926 100644
--- a/lib/protoparser/datadog/streamparser.go
+++ b/lib/protoparser/datadog/streamparser.go
@@ -157,7 +157,7 @@ func putRequest(req *Request) {
 
 var requestPool sync.Pool
 
-// sanitizeName performs DataDog-compatible santizing for metric names
+// sanitizeName performs DataDog-compatible sanitizing for metric names
 //
 // See https://docs.datadoghq.com/metrics/custom_metrics/#naming-custom-metrics
 func sanitizeName(name string) string {
diff --git a/lib/regexutil/promregex.go b/lib/regexutil/promregex.go
index cf196b8cd..eafc422fe 100644
--- a/lib/regexutil/promregex.go
+++ b/lib/regexutil/promregex.go
@@ -65,7 +65,7 @@ func NewPromRegex(expr string) (*PromRegex, error) {
 	return pr, nil
 }
 
-// MatchString retruns true if s matches pr.
+// MatchString returns true if s matches pr.
 //
 // The pr is automatically anchored to the beginning and to the end
 // of the matching string with '^' and '$'.
diff --git a/lib/storage/block_stream_writer.go b/lib/storage/block_stream_writer.go
index ff43aa3cd..ff3cb26ed 100644
--- a/lib/storage/block_stream_writer.go
+++ b/lib/storage/block_stream_writer.go
@@ -79,7 +79,7 @@ func (bsw *blockStreamWriter) reset() {
 	bsw.prevTimestampsBlockOffset = 0
 }
 
-// InitFromInmemoryPart initialzes bsw from inmemory part.
+// InitFromInmemoryPart initializes bsw from inmemory part.
 func (bsw *blockStreamWriter) InitFromInmemoryPart(mp *inmemoryPart, compressLevel int) {
 	bsw.reset()
 
diff --git a/lib/storage/dedup.go b/lib/storage/dedup.go
index ce886702c..9f8e45369 100644
--- a/lib/storage/dedup.go
+++ b/lib/storage/dedup.go
@@ -24,7 +24,7 @@ func isDedupEnabled() bool {
 	return globalDedupInterval > 0
 }
 
-// DeduplicateSamples removes samples from src* if they are closer to each other than dedupInterval in millseconds.
+// DeduplicateSamples removes samples from src* if they are closer to each other than dedupInterval in milliseconds.
 func DeduplicateSamples(srcTimestamps []int64, srcValues []float64, dedupInterval int64) ([]int64, []float64) {
 	if !needsDedup(srcTimestamps, dedupInterval) {
 		// Fast path - nothing to deduplicate
diff --git a/lib/storage/index_db.go b/lib/storage/index_db.go
index cdaaece1a..a035ab4ea 100644
--- a/lib/storage/index_db.go
+++ b/lib/storage/index_db.go
@@ -650,7 +650,7 @@ func generateTSID(dst *TSID, mn *MetricName) {
 	// This assumption is true because mn.Tags must be sorted with mn.sortTags() before calling generateTSID() function.
 	// This allows grouping data blocks for the same (job, instance) close to each other on disk.
 	// This reduces disk seeks and disk read IO when data blocks are read from disk for the same job and/or instance.
-	// For example, data blocks for time series matching `process_resident_memory_bytes{job="vmstorage"}` are physically adjancent on disk.
+	// For example, data blocks for time series matching `process_resident_memory_bytes{job="vmstorage"}` are physically adjacent on disk.
 	if len(mn.Tags) > 0 {
 		dst.JobID = uint32(xxhash.Sum64(mn.Tags[0].Value))
 	}
@@ -2754,7 +2754,7 @@ func (is *indexSearch) getMetricIDsForDateAndFilters(qt *querytracer.Tracer, dat
 	// Intersect metricIDs with the rest of filters.
 	//
 	// Do not run these tag filters in parallel, since this may result in CPU and RAM waste
-	// when the intial tag filters significantly reduce the number of found metricIDs,
+	// when the initial tag filters significantly reduce the number of found metricIDs,
 	// so the remaining filters could be performed via much faster metricName matching instead
 	// of slow selecting of matching metricIDs.
 	qtChild = qt.NewChild("intersect the remaining %d filters with the found %d metric ids", len(tfws), metricIDs.Len())
diff --git a/lib/storage/partition.go b/lib/storage/partition.go
index 15b9e1a0e..01c3a7d7d 100644
--- a/lib/storage/partition.go
+++ b/lib/storage/partition.go
@@ -57,7 +57,7 @@ const finalPartsToMerge = 3
 // Higher number of shards reduces CPU contention and increases the max bandwidth on multi-core systems.
 var rawRowsShardsPerPartition = (cgroup.AvailableCPUs() + 1) / 2
 
-// The interval for flushing bufferred rows into parts, so they become visible to search.
+// The interval for flushing buffered rows into parts, so they become visible to search.
 const pendingRowsFlushInterval = time.Second
 
 // The interval for guaranteed flush of recently ingested data from memory to on-disk parts,
@@ -2144,7 +2144,7 @@ func runTransaction(txnLock *sync.RWMutex, pathPrefix1, pathPrefix2, txnPath str
 		}
 	}
 
-	// Flush pathPrefix* directory metadata to the underying storage,
+	// Flush pathPrefix* directory metadata to the underlying storage,
 	// so the moved files become visible there.
 	fs.MustSyncPath(pathPrefix1)
 	fs.MustSyncPath(pathPrefix2)
diff --git a/lib/storage/raw_row.go b/lib/storage/raw_row.go
index 206805d62..86aeb0533 100644
--- a/lib/storage/raw_row.go
+++ b/lib/storage/raw_row.go
@@ -8,7 +8,7 @@ import (
 	"github.com/VictoriaMetrics/VictoriaMetrics/lib/logger"
 )
 
-// rawRow reperesents raw timeseries row.
+// rawRow represents raw timeseries row.
 type rawRow struct {
 	// TSID is time series id.
 	TSID TSID
diff --git a/lib/storage/search.go b/lib/storage/search.go
index 29a4b5b90..1873939f5 100644
--- a/lib/storage/search.go
+++ b/lib/storage/search.go
@@ -100,7 +100,7 @@ type Search struct {
 
 	ts tableSearch
 
-	// tr contains time range used in the serach.
+	// tr contains time range used in the search.
 	tr TimeRange
 
 	// tfss contains tag filters used in the search.
@@ -165,7 +165,7 @@ func (s *Search) Init(qt *querytracer.Tracer, storage *Storage, tfss []*TagFilte
 	}
 	// It is ok to call Init on non-nil err.
 	// Init must be called before returning because it will fail
-	// on Seach.MustClose otherwise.
+	// on Search.MustClose otherwise.
 	s.ts.Init(storage.tb, tsids, tr)
 	qt.Printf("search for parts with data for %d series", len(tsids))
 	if err != nil {
diff --git a/lib/storage/storage.go b/lib/storage/storage.go
index 1a14f470d..3ebbd4a25 100644
--- a/lib/storage/storage.go
+++ b/lib/storage/storage.go
@@ -1972,7 +1972,7 @@ func (s *Storage) updatePerDateData(rows []rawRow, mrs []*MetricRow) error {
 		s.pendingHourEntriesLock.Unlock()
 	}
 	if len(pendingDateMetricIDs) == 0 {
-		// Fast path - there are no new (date, metricID) entires in rows.
+		// Fast path - there are no new (date, metricID) entries in rows.
 		return nil
 	}
 
diff --git a/lib/storage/table.go b/lib/storage/table.go
index 690d21715..855cc4100 100644
--- a/lib/storage/table.go
+++ b/lib/storage/table.go
@@ -425,7 +425,7 @@ func (tb *table) retentionWatcher() {
 			continue
 		}
 
-		// There are paritions to drop. Drop them.
+		// There are partitions to drop. Drop them.
 
 		// Remove table references from partitions, so they will be eventually
 		// closed and dropped after all the pending searches are done.
diff --git a/lib/storage/time.go b/lib/storage/time.go
index 9be28b241..e3d013ad3 100644
--- a/lib/storage/time.go
+++ b/lib/storage/time.go
@@ -51,7 +51,7 @@ func timestampToPartitionName(timestamp int64) string {
 	return t.Format("2006_01")
 }
 
-// fromPartitionName initializes tr from the given parition name.
+// fromPartitionName initializes tr from the given partition name.
 func (tr *TimeRange) fromPartitionName(name string) error {
 	t, err := time.Parse("2006_01", name)
 	if err != nil {
diff --git a/lib/streamaggr/streamaggr.go b/lib/streamaggr/streamaggr.go
index a31dd0e16..3e6199350 100644
--- a/lib/streamaggr/streamaggr.go
+++ b/lib/streamaggr/streamaggr.go
@@ -199,7 +199,7 @@ type aggregator struct {
 
 	// suffix contains a suffix, which should be added to aggregate metric names
 	//
-	// It contains the interval, lables in (by, without), plus output name.
+	// It contains the interval, labels in (by, without), plus output name.
 	// For example, foo_bar metric name is transformed to foo_bar:1m_by_job
 	// for `interval: 1m`, `by: [job]`
 	suffix string


Test patch:
diff --git a/lib/netutil/proxyprotocol_test.go b/lib/netutil/proxyprotocol_test.go
index 0e86b21cd..0e9e6913c 100644
--- a/lib/netutil/proxyprotocol_test.go
+++ b/lib/netutil/proxyprotocol_test.go
@@ -89,7 +89,7 @@ func TestParseProxyProtocolFail(t *testing.T) {
 	// unsupported command
 	f([]byte{0x0D, 0x0A, 0x0D, 0x0A, 0x00, 0x0D, 0x0A, 0x51, 0x55, 0x49, 0x54, 0x0A, 0x22, 0x11, 0x00, 0x0C,
 		0x7F, 0x00, 0x00, 0x01, 0, 0, 0, 0, 0, 80, 0, 0})
-	// mimatch ipv6 and ipv4
+	// mismatch ipv6 and ipv4
 	f([]byte{0x0D, 0x0A, 0x0D, 0x0A, 0x00, 0x0D, 0x0A, 0x51, 0x55, 0x49, 0x54, 0x0A, 0x21, 0x21, 0x00, 0x0C,
 		// ip data srcid,dstip,srcport
 		0x7F, 0x00, 0x00, 0x01, 0, 0, 0, 0, 0, 80, 0, 0})