Move graph build logic to the BuildManager

This enables programatic graph builds by exposing a way to ask the BuildManager for a graph build instead of the logic being inside XMake.
This also fixes a couple bugs related to how graph builds were happening and gets the logic "closer" to where we want it to end up in the end (the scheduler).

Yes, I know I still need tests. The latest iteration had enough changes to warrant fresh eyes on it though.

Some example of console outputs:
A valid project referencing a valid project:

A valid project referencing an invalid project:

A valid project referencing a failing project:


Translate Windows path to Posix style path automatically

For example, I pasted the Windows path copied from Windows Explorer, there should be a shortcut keys to automatically translate it to Posix style path. Another solution is including a cygpath like utility. Please consider. Thank you.

If you just want to convert the backslashes to forward slashes in the pasted path, the shell in busybox-w32 lets you do that with Ctrl-Z.

Thanks, Ron, I didn't know about that! Handy!


Create goading-helper

This plugin contains the following features for use with the new goading potions.

Radius overlay to show aggression range.
Reminder overlay to remind user to sip potion when they have it in inventory and aren't under effect
Notification on potion expiry
Tick timer to display when the aggression check happens

PR closed after noticing missing info in gradle files, recreating


Use npm audit instead of nsp for bosco audit

Because nsp is shutting down at the end of this week 😸

For what it's worth, the current version of audit isn't working for my team.

This has been done.


Replaces dashes in tab titles with dots

Through the various tab titles on the site, we use - as buffer between 2n.fm and the dynamic portion. Please swap the - with ·

Done in af1764fc1c3058c449725008d26fc78681e68b31


Fix index entries and descriptions of (cont), ∋ and ∌

The problem
The (cont), ∋ and ∌ sections look a lot like the (elem), ∈ and ∉ones and may need a few corrections.

Well my fix try was to only change the description of (cont) to '...if $b is an element of $a' and the description of !(cont) to '...if $b is not an element of $a'. But reversing the order of arguments in the description with respect to the prototypes reads a bit confusing.

It's perfect that way, thanks. I only wanted to point out that it wasn't
really incorrect before, just in case you wanted to, at least, leave the
indexing option. Losing indexing anchors might lose links and that's not
nice.

Well, we did lose duplicate anchors (#index-entry-Membership_operator and #index-entry-Non-membership_operator) but there are still one of each left, for (elem) and ∉.
So we did not break existing links to these anchors and thus these operators. And anyway I am not sure that the duplicate anchors, to (cont) and ∌, would have been used by browsers as they appeared after in the document.
But we could bring back search results, with something like
X<Containing operator|Membership operator,Containing operator>, and X<Non-containing operator|Non-membership operator,Non-containing operator>, which would end up to the following:

How does that look to you ?

If you lose the comma, and the text after it, that creates categories, it's
OK. Or if you keep the old anchor.


Clear (existing) error cond from Subscription, once error resolved

Description of the change:
The func removeSubsCond takes in a list of pointers to Subscription objects, modifies the
objects that the pointers point to, but return a new list of those pointers. A PR included in
the v0.25.0 release changed the way the output of that function was being used leading to a regression.
This PR fixes the removeSubsCond function, fixing the regression as a result.
Motivation for the change:
Closes #3162

Reviewer Checklist

[ ] Implementation matches the proposed design, or proposal is updated to match implementation
[ ] Sufficient unit test coverage
[ ] Sufficient end-to-end test coverage
[ ] Bug fixes are accompanied by regression test(s)
[ ] e2e tests and flake fixes are accompanied evidence of flake testing, e.g. executing the test 100(0) times
[ ] tech debt/todo is accompanied by issue link(s) in comments in the surrounding code
[ ] Tests are comprehensible, e.g. Ginkgo DSL is being used appropriately
[ ] Docs updated or added to /doc
[ ] Commit messages sensible and descriptive
[ ] Tests marked as [FLAKE] are truly flaky and have an issue
[ ] Code is properly formatted

/retest

/retest

Generally looks good to me. But @m1kola has some quyestions.

/retest

@tmshort there was a change I needed to do in the e2e test to reflect "BundleUnpacking cond is now removed instead of being set to false" in the e2e test 😅 Made that change, all tests should pass now.

/lgtm
/approve

/label qe-approved


Need update for new version of Pytorch

Your work is great since the official implementation of Pytorch doesn't work for me. Could you release newer version that capable with Pytorch 1.2.0 and 1.3.0? Thanks alot!

One of the reasons why it does not work with new PyTorch is new CUDA 10.1. Here is the quote from the release notes:

The non-sync definitions of warp shuffle functions ( __shfl, __shfl_up, __shfl_down, and __shfl_xor ) and warp vote functions (__any, __all, __ballot) have been removed when compilation is targeting devices with compute capability 7.x and higher.

There is one usage of __shfl_down in warp-ctc/src/reduce.cu which you can replace to __shfl_down_sync.
Unfortunately, the Baidu's ctc implementation depends on ModernGPU, which has not been updated for a long time and also uses __shfl functions. Thus, you also have to patch warp-ctc/include/contrib/moderngpu/include/device/intrinsics.cuh.
I will recommend you to use the official PyTorch implementation of ctc_loss, even though I don’t like this spaghetti code LossCTC.cu.
It seems like after the bug fix #27460 PyTorch's implementation is stable.

@1ytic Well, I've tried many times, but the official implementation doesn't work for me.
@jpuigcerver Do you intend to continue to maintain this repo? :)

Dear users, since PyTorch now includes its own CTC implementation, I'd suggest to use it instead of Baidu's.
Unfortunately, I don't have the time to fix Baidu's implementation myself.


Add a command that allows for reporting outside of the control server

Goal: Implement a Discord modal that allows for moderators to report commission scams without having to be in the control server. This can be brought up by any user with the administrator or ban permission.
This would direct the correct information to the TAG control server, by making a reported post. There would be a significant server wide cooldown implemented as well to prevent users from abusing it.

This would also need the system for registering report thread ids to scammer ids, such that we can make sure we don’t create duplicate posts.
Scamcheck, when ran in the control server should link to the posts as well.
Report commands would also need to have a message type in the relay system to allow for the sub instances to report as well


RC Spot-Check Test: Area Model Multiplication 1.3.0-rc.2

RC Spot-Check Test
Mentions: @marlitas, @amanda-phet, @Luisav1
Simulation links

github repository for issues
phet top-level directory
sim: all_phet.html

Test Matrices
General Test:

[x] Tester = KW, Platform = Win 11 Chrome, Time = .5
[ ] Tester = CH, Platform = Win 10 Firefox, Time = 1
[x] Tester = NS, Platform = Mac + Safari, Time = .25

Additional Features Test:

[ ] Tester = , Platform = , Time =
[ ] Tester = , Platform = , Time =

Features included

[ ] ~PhET-iO~
[ ] ~Alternative Input~
[x] UI Sound
[x] Sonification
[ ] ~Description~
[ ] ~Voicing~
[x] Dynamic Locale

Focus and Special Instructions
Spotcheck to address the issues below.
Any bugs that come up that can be replicated in the published version should receive an issue labelled as deferred. They will not be fixed for this upcoming publication unless highly prohibitive or concerning.
Issues to Verify
These issues should have the "status:ready-for-review" label. Unless an issue says to close after verifying, assign the
issue back to the developer.

[x] https://github.com/phetsims/area-model-algebra/issues/9
[x] https://github.com/phetsims/area-model-multiplication/issues/13
[x] https://github.com/phetsims/area-model-multiplication/issues/14
[x] https://github.com/phetsims/area-model-multiplication/issues/15

For QA...

General features

What to Test

Click every single button.
Test all possible forms of input.

Test all mouse/trackpad inputs.
Test all touchscreen inputs.

If there is sound, make sure it works.
Make sure you can't lose anything.
Play with the sim normally.
Try to break the sim.
Test some query parameters. (See QA Book for a
list of query parameters.)
When making an issue, check to see if it was in a previously published version.
Try to include version numbers for browsers.
If there is a console available, check for errors and include them in the Problem Description.
As an RC begins and ends, check the sim repo. If there is a maintenance issue, check it and notify developers if there
is a problem.
As the RC ends, notify the developer of any new QA credits that need to be added.

PhET-iO features

What to Test

Make sure that public files do not have password protection. Use a private browser for this.
Make sure that private files do have password protection. Use a private browser for this.
Make sure standalone sim is working properly.
Make sure the wrapper index is working properly.
Make sure each wrapper is working properly.
Launch the simulation in Studio with ?stringTest=xss and make sure the sim doesn't navigate to youtube
For newer PhET-iO wrapper indices, save the "basic example of a functional wrapper" as a .html file and open it. Make
sure the simulation loads without crashing or throwing errors.
Load the login wrapper just to make sure it works. Do so by adding this link from the sim deployed root:/wrappers/login/?wrapper=record&validationRule=validateDigits&&numberOfDigits=5&promptText=ENTER_A_5_DIGIT_NUMBER

Further instructions in QA Book
Conduct a recording test to Metacog, further instructions in the QA Book. Do this for iPadOS + Safari and one other
random platform.
Conduct a memory test on the stand alone sim wrapper (rc.1).
Test one platform combination with ?phetioDebug=true on the Studio and State wrapper.
If Pan/Zoom is supported, make sure that it works when set with PhET-iO State.
Test that the sim works offline:

Click the link to the phet-io zip file (at top of issue) to download the zip file.
Unzip it to a spot locally.
Open index.html by double clicking it on your desktop or in a Finder-view.
It should look like the standalone version of the sim in PhET-iO brand.

Accessibility features

What to Test

Specific instructions can be found above.

Make sure the accessibility (a11y) feature that is being tested doesn't negatively affect the sim in any way. Here is
a list of features that may be supported in this test:

Alternative Input
Interactive Description
Sound and Sonification
Pan and Zoom
Mobile Description
Voicing

Test all possible forms of input.

Test all mouse/trackpad inputs.
Test all touchscreen inputs.
Test all keyboard navigation inputs (if applicable).
Test all forms of input with a screen reader (if applicable).

If this sim is not in this list or up to date there, make an
issue in website to ask if PhET research page links need updating. Please
assign to @terracoda and @emily-phet.

Screen Readers
This sim may support screen readers. If you are unfamiliar with screen readers, please ask Katie to introduce you to
screen readers. If you simply need a refresher on screen readers, please consult the
QA Book, which should have all of the information
you need as well as a link to a screen reader tutorial made by Jesse. Otherwise, look over the a11y view before opening
the simulation. Once you've done that, open the simulation and make sure alerts and descriptions work as intended.

Platforms and Screen Readers to Be Tested

Windows 10 + Latest Chrome + Latest JAWS
Windows 10 + Latest Firefox + Latest NVDA
macOS + Safari + VoiceOver
iOS + Safari + VoiceOver (only if specified in testing issue)

Critical Screen Reader Information
We are tracking known screen reader bugs in
here. If you find a screen reader bug,
please check it against this list.

Keyboard Navigation
This sim supports keyboard navigation. Please make sure it works as intended on all platforms by itself and with a
screen reader.
Magnification
This sim supports magnification with pinch and drag gestures on touch screens, keyboard shortcuts, and mouse/wheel
controls. Please test magnfication and make sure it is working as intended and well with the use cases of the
simulation. Due to the way screen readers handle user input, magnification is NOT expected to work while using a screen
reader so there is no need to test this case.

FAQs for QA Members

There are multiple tests in this issue... Which test should I do first?
Test in order! Test the first thing first, the second thing second, and so on.

How should I format my issue?

We typically assign the developer who opened the issue in the QA repository.

My question isn't in here... What should I do?
You should:

Consult the QA Book.
Google it.
Ask Katie.
Ask a developer.
Google it again.
Cry.

QA is done.

Closing since the next spot check is open now.


improved opencensus-php dockerfile adding composer+git for easy usage

Adds composer to docker image making it easy to work with a composer project straight from the image using a mounted volume.
Example of this can be found here: https://github.com/basvanbeek/opencensus-php-docker

@odeke-em can you give this the green light? it enables the docker example as found here:
https://github.com/basvanbeek/opencensus-php-docker


force travis to always make it's own build to test against

We need to make sure that travis is always testing against the src/ in what someone has possibly changed. We were testing against dist only which allowed src/* flaws to creep in.

@jessertaylor @tombatossals will merge post travis passing

Resolved #784


FINERACT-1443 -fix-for-doubling-interest

Description
Describe the changes made and why they were made.
Ignore if these details are present on the associated Apache Fineract JIRA ticket.
Checklist
Please make sure these boxes are checked before submitting your pull request - thanks!

[x] Write the commit message as per https://github.com/apache/fineract/#pull-requests

[x] Acknowledge that we will not review PRs that are not passing the build ("green") - it is your responsibility to get a proposed PR to pass the build, not primarily the project's maintainers.

[ ] Create/update unit or integration tests for verifying the changes made.

[x] Follow coding conventions at https://cwiki.apache.org/confluence/display/FINERACT/Coding+Conventions.

[ ] Add required Swagger annotation and update API documentation at fineract-provider/src/main/resources/static/api-docs/apiLive.htm with details of any API changes

[x] Submission is not a "code dump".  (Large changes can be made "in repository" via a branch.  Ask on the developer mailing list for guidance, if required.)

FYI our guidelines for code reviews are at https://cwiki.apache.org/confluence/display/FINERACT/Code+Review+Guide.

Unfortunately I don't know the code well enough to review this, but looks like an important fix. Would be great if someone with more expertise of the loan rescheduling code could take a look...


POC [Fixes #311] fix cleanup

ensure cleanup gives the ability to wait until it is done
improves support for mid-build cleanup, waits for the current task to complete, prevents the next task, and then exists.

I actually wonder if it's conceptually necessary to tie the cancellation thing to the cleanup function. In other words, I don't think there's any reason why in general we couldn't start a fresh build after canceling the current build, instead of cleaning up immediately. We shouldn't end up in any "wedged" state that would stop us from doing so.
So if we do that, the Ctrl+C handler would do something like:
cancelCurrentBuild()
then wait for currentBuild
then cleanup

@joliss i'll update this to be more like what I ended-up with on 0.18.x. There are some nuanced differences, that have not made it this far yet.

adding a public cancel independent of cleanup is totally fine, will gladly add that
cleanup should likely still call cancel, otherwise cleanup and an running build will simply race
we need to decide the ordering between the completion of cancel() cleanup() and builder.build(). I believe builder.build completion must wait for any pending cleanup() which in tern must wait for any pending cancel(). That way the external world remains observably consistent, regardless if a build completes via rejection due to cancellation, due to error, or totally normal runtime.

replaced by: https://github.com/broccolijs/broccoli/pull/350


Upgrade to electron@^19

Signed-off-by: Sebastian Malton<EMAIL_ADDRESS>blocked on https://github.com/lensapp/lenscloud-lens-extension/issues/1660

Electron 15 and 16 have reached end-of-life and are no longer supported. This cannot be merged as the <webview>'s used by the extension API currently cannot open windows.
They should be removed entirely.

Any updates?

@ixrock Yeah I will get back to fixing this PR up. It is currently blocked on removing webview usages in some of the bundled extensions first.

Upvoting for upgrade. Bumped into some other bugs which will be fixed from electron 16.

"@types/node": "^16.14.2" seems wrong, the latest version on npm is 16.11.49, and what actually installed in this PR is 16.11.34 (according to lockfile)


[TSS]: stateSignatureCache may cause memory leaks

Describe the bug
The statement "stateSignatureCache map[[32]byte][]byte" uses a map to cache previously signed data, but it does not have a size limit and only allows adding data without removing any. This could potentially lead to memory leaks. It is recommended to replace it with a mature cache mechanism like LRU (Least Recently Used) to address this issue.

Similar to https://github.com/mantlenetworkio/mantle/issues/1189


Fix to inject port number between hostname and pathname when constructting the Algod and Indexer URLs.

Previously the port number was being added after the pathname which doesn't work when explicitly supplying a port number.
Normally this isn't a problem when accessing these services via the default port because in those cases no port is explicitly specified.

Taking a look

The new AlgoSigner 1.7.1 version now uses the sdk during URL check calls. The port will be injected by the sdk method and should now more closely align with calls made after save.


Change deploy-app to push new app without route

Our deploy-app recipe will create a -release app with a route and only removes the route after it has been started. If the app start fails this means there can be a route pointing to a dead app. See https://trello.com/c/x76uyB81/692-a-failed-api-release-will-leave-a-dangling-route for info on how this came up.
This commit changes the deploy-app recipe so that the release app will be created without a route, and then if the app fails to start nothing else will be broken 🤞. The route mapping is done by a new script, scripts/map-route.sh, that gets the desired route(s) from the app manifest.
This should also have the bonus effect of meaning our release process causes less downtime in our metrics.
This has been tested on preview.

So to check my understanding, I think this is what's now happening:

create the release app without a route, don't start it
add the network policy ingress/egress where necessary
sleep 60
start the release app
add the route to the release app (new step)
unmap the route for the old app
sleep 60
stop the old app
delete the old app
rename the release app

I think our sleeps are still in the right places? Is there anything missing?

So to check my understanding, I think this is what's now happening:

create the release app without a route, don't start it
add the network policy ingress/egress where necessary
sleep 60
start the release app
add the route to the release app (new step)
unmap the route for the old app
sleep 60
stop the old app
delete the old app
rename the release app

I think our sleeps are still in the right places? Is there anything missing?

I just tested the map-route command, it's pretty quick.

Let's try it - I can merge my API PR straight after this is merged.

👍


Feature/gzip

Codecov Report

Merging #11 (ab6694d) into master (d5e6d67) will decrease coverage by 0.45%.
The diff coverage is 55.76%.

@@            Coverage Diff             @@
##           master      #11      +/-   ##
==========================================
- Coverage   61.04%   60.59%   -0.46%
==========================================
  Files          14       15       +1
  Lines         557      609      +52
==========================================
+ Hits          340      369      +29
- Misses        121      133      +12
- Partials       96      107      +11

Flag
Coverage Δ

unittests
60.59% <55.76%> (-0.46%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/provider/provider_gzip.go
55.76% <55.76%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d5e6d67...ab6694d. Read the comment docs.


Fix OWASP test

Ticket
Resolves FFS-1083
Changes

Bring OWASP tests back to working.

Context for reviewers
The OWASP test have not been running for some time.
Testing

Provide evidence that the code works as expected. Explain what was done for testing and the results of the test plan. Include screenshots, GIF demos, shell commands or output to help show the changes working as expected. ProTip: you can drag and drop or paste images into this textbox.

@tdooner Are we able to put Sandbox credentials for pinwheel up on github? This fails because it try's to make requests to pinwheel

@joeyg We could, I guess, as a secret environment variable. Is OWASP going through every page in the app or something? I'm just trying to think about what the right thing to do here is architecturally - do we want to somehow stub out Pinwheel in test environments so we're not actually making 3rd party calls. Certainly the Pinwheel webhooks will not arrive properly without some legwork. Can we just have it exclude the "Start Flow Manually" link on the homepage if it's just crawling for links?

@tdooner you can block URLs but there is a bug preventing that from working https://github.com/zaproxy/action-full-scan/issues/83

@joeyg Hm, that sucks. Can we pass in a -configfile with these fields rather than having to pass in these escaped regexes on the command line?

@joeyg What is your capacity going to be to work on this? Do you want to keep taking this PR on or should we take it back?

@tdooner thanks for asking - you all should take it on if you need it done soon. My availability changes a lot from day to day.

Closing in favor of #116


Message counter update for docstrings

https://github.com/discord/discord-api-docs/pull/5206

HTTP wrappers was removed in #201 so this is not needed


Temperature instrumentation

Could we please have an instrument which polls all of the thermal devices in /sys/devices/virtual/thermal/ every second and dumps them to a csv file?  The sysfs instrument could be extended to provide this functionality.
With this instrument we can make comparative measurements between workloads on the same device.  We could not accurately compare different devices against each other but we could gain useful data.

There is a file poller instrument that should do exactly that

Yay!  Where?

Actually we'd like the instrument to be much smarter.  It should go into the directory and discover the list of thermal devices and log them.  Ideally it would get their type too.

https://github.com/ARM-software/workload-automation/blob/master/wlauto/instrumentation/poller/__init__.py

Ah i see, I suppose there could be an extended file poller with the logic to do that

This should be a separate instrument,  as the functionality is a lot more specialised -- file_poller should remain generic. Though the new instrument can reuse the same poller binary as the file poller.

Just to extend on this topic, I recently used the delay 'instrument' to allow the device to cool between iterations.   The problem faced here is that it is necessary to specify a device specific temperature file in the agenda:
    temperature_file: '/sys/devices/virtual/thermal/thermal_zone0/temp'

Ideally, the agenda could be kept free from device specific parameters.  So instead can this file become part of the device config?


⚠ Fortnite has degraded performance

In bb558e7, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1456 ms

Resolved: Fortnite performance has improved in e96de72.


Microsoft Teams no longer working - unsupported browser

Hi,
First up - I do love Franz, such a simple and awesome idea. Now to my issue.
Version: 5.0.0.beta-14
Platform: Kubuntu 16.04, fully patched as of 2018-01-02
Hardware: Toshiba Satellite P50D
I previously added a Microsoft Teams account that worked for a couple of weeks, but since about December 15th or so, I get the MS unsupported browser page (see attached Screenshot-Franz-MSTeams-SadFace.png

)
I have tried disable/enabling the service (no change)
I have tried removing it and re-adding it (no change)
Turning things on them off again (hey, it's a Microsoft service, that usually works, right?) (no change).
Interestingly enough, if you look at the icon on the left hand side, you can see a message indicator. This feature still appears to work as at the time of the snapshot, there was indeed a message waiting for me, and after reading it and reloading the Teams service (Ctrl-R), the indicator disappeared.
Go figure.
All other services I am using (WhatsApp x2, Telegram, Gmail x2, Outlook x2, LinkedIn, Skype, FB Messenger) are working just fine. Only MS Teams seems to have an issue.
Happy to assist in any way to resolve this with logs, testing, beating with a stick (the software, not the devs), bribing with chocolate (the devs, not the software)... whatever.
Cheers.

I don't have this issue, can you try again?
I'm using Version 5.0.0-beta.18 on Windows 10.
Maybe it was an error related to Microsoft and the approved browsers


libsystem_kernel.dylib __pthread_kill

SDK and version
SDK : RealmSwift
Version: 10.15.0
Observations

How frequent do the crash occur?
Happened only once
Does it happen in production or during dev/test?
Happened in testing
Can the crash be reproduced by you?
No
Can you provide instructions for how we can reproduce it?
No

Crash log / stacktrace
libsystem_kernel.dylib
__pthread_kill
libsystem_c.dylib
abort
Realm
please_report_this_issue_in_github_realm_realm_core
Realm
realm::util::terminate_internal(std::__1::basic_stringstream<char, std::__1::char_traits, std::__1::allocator >&)
Realm
realm::util::terminate(char const*, char const*, long, std::initializer_listrealm::util::Printable&&)
Realm
void realm::util::terminate<unsigned long long, unsigned long long>(char const*, char const*, long, unsigned long long, unsigned long long) terminate.hpp:45
Realm
realm::Array::set(unsigned long, long long)
Realm
realm::Obj& realm::Obj::set(realm::ColKey, long long, bool)
Realm
void (anonymous namespace)::kvoSetValue<long long, long long>(RLMObjectBase*, unsigned long, long long) RLMAccessor.mm:120
-----Redacted stacktrace for privacy------
CoreBluetooth
-[CBPeripheral handleAttributeEvent:args:attributeSelector:delegateSelector:delegateFlag:]
Steps & Code to Reproduce
Can't share the steps since I don't know myself. Can share the code either. The stack trace said to report the issue so reporting it. Will help as much as I can while redacting some info.

@RahulRawat-95
Can you show how you using the Realm?
Realm configuration, creation of object and object model related to the crash?
Is it happened in the main thread?


Dependency conflict between aws-amplify/backend and aws-amplify/backend-cli after releasing a breaking change.

From https://github.com/aws-amplify/amplify-js-samples-staging/pull/765#discussion_r1436674841 .
It appears that releasing a breaking change to @aws-amplify/plugin-types does not propagate correctly to @aws-amplify/backend-cli that also depends on this transitively.
Note that breaking change in @aws-amplify/plugin-types was released with proper version increment, i.e. minor version bump in 0.x versioning mode, (see https://dev.to/malykhinvi/semver-0-x-x-46e7 for reference).
Log from failure from an app before PR above was merged. The app didn't use package lock file
/amplify/backend.ts:6:3
Type error: Type 'ConstructFactory<AmplifyAuth>' is not assignable to type 'ConstructFactory<Construct>'.
  Types of property 'getInstance' are incompatible.
    Type '(props: ConstructFactoryGetInstanceProps) => AmplifyAuth' is not assignable to type '(props: ConstructFactoryGetInstanceProps) => Construct'.
      Types of parameters 'props' and 'props' are incompatible.
        Type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/backend/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactoryGetInstanceProps' is not assignable to type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactoryGetInstanceProps'.
          The types returned by 'constructContainer.getConstructFactory(...)' are incompatible between these types.
            Type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/backend/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactory<T> | undefined' is not assignable to type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactory<T> | undefined'.
              Type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/backend/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactory<T>' is not assignable to type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactory<T>'.
                Types of property 'getInstance' are incompatible.
                  Type '(props: import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/backend/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactoryGetInstanceProps) => T' is not assignable to type '(props: import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactoryGetInstanceProps) => T'.
                    Types of parameters 'props' and 'props' are incompatible.
                      Type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactoryGetInstanceProps' is not assignable to type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/backend/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactoryGetInstanceProps'.
                        The types of 'constructContainer.registerConstructFactory' are incompatible between these types.
                          Type '(token: string, provider: import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactory) => void' is not assignable to type '(token: string, provider: import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/backend/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactory) => void'.
                            Types of parameters 'provider' and 'provider' are incompatible.
                              Type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/backend/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactory' is not assignable to type 'import("/Users/zheallan/workspace/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactory'.
                                The types returned by 'getInstance(...)' are incompatible between these types.
                                  Type 'unknown' is not assignable to type 'ResourceProvider'.

  4 |
  5 | defineBackend({
> 6 |   auth,
    |   ^
  7 |   data,
  8 | });
  9 |
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Reproduction steps

Checkout this commit https://github.com/aws-amplify/amplify-js-samples-staging/commit/9662f904e55b5cfd8b52ee4d22ddcd98797d794f . (the commit after it fixes the problem).
cd samples/next/api/data-client-gen2
npm install
npx sandbox

Result:
bcd0740fa72c:data-client-gen2 sobkamil$ npm install
npm WARN deprecated<EMAIL_ADDRESS>This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.
npm WARN deprecated<EMAIL_ADDRESS>This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.
npm WARN deprecated<EMAIL_ADDRESS><EMAIL_ADDRESS>is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.

added 1067 packages, and audited 1182 packages in 31s

178 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
bcd0740fa72c:data-client-gen2 sobkamil$ npx amplify sandbox
[Sandbox] Initializing...
[Sandbox] Executing command `deploy`
amplify/backend.ts(6,3): error TS2322: Type 'ConstructFactory<AmplifyAuth>' is not assignable to type 'ConstructFactory<Construct>'.
  Types of property 'getInstance' are incompatible.
    Type '(props: ConstructFactoryGetInstanceProps) => AmplifyAuth' is not assignable to type '(props: ConstructFactoryGetInstanceProps) => Construct'.
      Types of parameters 'props' and 'props' are incompatible.
        Type 'import("/Users/sobkamil/git/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactoryGetInstanceProps' is not assignable to type 'import("/Users/sobkamil/git/amplify-js-samples-staging/samples/next/api/data-client-gen2/node_modules/@aws-amplify/auth-construct-alpha/node_modules/@aws-amplify/plugin-types/lib/construct_factory").ConstructFactoryGetInstanceProps'.
          The types of 'constructContainer.getOrCompute' are incompatible between these types.
            Type '(generator: ConstructContainerEntryGenerator) => Construct' is not assignable to type '(generator: ConstructContainerEntryGenerator<object>) => ResourceProvider'.
              Types of parameters 'generator' and 'generator' are incompatible.
                Type 'ConstructContainerEntryGenerator<object>' is not assignable to type 'ConstructContainerEntryGenerator'.
                  The types returned by 'generateContainerEntry(...)' are incompatible between these types.
                    Property 'node' is missing in type 'ResourceProvider<object>' but required in type 'Construct'.
TypeScript validation check failed, check your backend definition
Caused By:
[Sandbox] Watching for file changes...
^C[Sandbox] Shutting down
? Would you like to delete all the resources in your sandbox environment (This cannot be undone)? y
[Sandbox] Deleting all the resources in the sandbox environment...
[Sandbox] Executing command `destroy`
amplify-dataclientgen2-sobkamil-sandbox-846a36cb14: destroying... [1/1]

 ✅  amplify-dataclientgen2-sobkamil-sandbox-846a36cb14: destroyed

[Sandbox] Finished deleting.

After taking another look at the release content https://github.com/aws-amplify/amplify-backend/pull/791
it seems that we released some packages with patch and some with minor version increment.
Therefore, for example the ^0.x.y (special versioning) pulled automatically new @aws-amplify/auth-construct-alpha which had only patch increment, however it pulled new minor version (0.x breaking change) of @aws-amplify/plugin-types and led to inconsistent dependency graph.
Similar scenario may happen when we GA and switch to ^x.y.z versioning. Therefore it seems that releasing a breaking change of certain packages like @aws-amplify/plugin-types should bubble up though deps graph and force more aggressive version increment (appropriate for breaking change) of all packages that depend on such package.
We should:

Identify which "core" packages should propagate major version upgrade across our packages
Implement enforcement (PR check?)

Note:
When we graduate from 0.x versions this issue might be somewhat mitigated by the fact that if we rolled major version of plugin-types and mix of minor and patch increments elsewhere then all of them would be automatically absorbed in customer's app and have new major version of plugin-types consistently pulled into dependency graph.
This should reduce potential impact to cases when:

Customer is pinning version of one of components.
Customer is explicitly depending on  plugin-types .

Therefore, we should consider holding off with this to see what's actual impact is and how strict should we be with versioning of this.


Config entries randomly skipped

PS C:\Users\Madis> mmc-export -i "C:\Users\Madis\Desktop\Fabulously Optimized 3.8.2.zip" -f Modrinth -o "C:\Users\Madis\Desktop" --exclude-providers CurseForge --modrinth-search loose --config "C:\Users\Madis\Documents\GitHub\fabulously-optimized\Modrinth\mmc-export.toml"
No config entry found for resource: Cloth API
No config entry found for resource: Cloth Config v6
No config entry found for resource: ToolTip Fix
No config entry found for resource: Fabric Language Kotlin
No config entry found for resource: YOSBR

PS C:\Users\Madis> mmc-export -i "C:\Users\Madis\Desktop\Fabulously Optimized 3.8.2.zip" -f Modrinth -o "C:\Users\Madis\Desktop" --exclude-providers CurseForge --modrinth-search loose --config "C:\Users\Madis\Documents\GitHub\fabulously-optimized\Modrinth\mmc-export.toml"
No config entry found for resource: Cloth API
No config entry found for resource: YOSBR
No config entry found for resource: Farsight Mod
No config entry found for resource: ToolTip Fix
No config entry found for resource: Mod Menu Helper

PS C:\Users\Madis> mmc-export -i "C:\Users\Madis\Desktop\Fabulously Optimized 3.8.2.zip" -f Modrinth -o "C:\Users\Madis\Desktop" --exclude-providers CurseForge --modrinth-search loose --config "C:\Users\Madis\Documents\GitHub\fabulously-optimized\Modrinth\mmc-export.toml"
No config entry found for resource: Fabric Language Kotlin
No config entry found for resource: Cloth API
No config entry found for resource: ToolTip Fix
No config entry found for resource: Cloth Config v6
No config entry found for resource: YOSBR

PS C:\Users\Madis> mmc-export -i "C:\Users\Madis\Desktop\Fabulously Optimized 3.8.2.zip" -f Modrinth -o "C:\Users\Madis\Desktop" --exclude-providers CurseForge --modrinth-search loose --config "C:\Users\Madis\Documents\GitHub\fabulously-optimized\Modrinth\mmc-export.toml"
No config entry found for resource: YOSBR
No config entry found for resource: ToolTip Fix
No config entry found for resource: Cloth API
No config entry found for resource: DCCH
No config entry found for resource: Cloth Config v6

Same config, ran multiple times. One time the mods are found, the other time they aren't...
Config: https://github.com/Fabulously-Optimized/fabulously-optimized/blob/main/Modrinth/mmc-export.toml

Can you try again with latest version?

As of 2.3.0, it doesn't randomly skip that way.


Add resend button into JSQMessagesCollectionViewCell

I want to add an resend button into JSQMessagesCollectionViewCell . What should i do

Thanks @wanyue1215 ! :smile:
There are lots of previous questions about customizing cells. You can find the answers here:
https://github.com/jessesquires/JSQMessagesViewController/issues?utf8=✓&q=is%3Aissue+custom+cells+is%3Aclosed+

@jessesquires  thanks 😄


httpcli should return response payload as a gpr_slice

To be mildly consistent with the rest of the codebase.

I can work this one.
@ctiller Do you mean grpc_httpcli_response should hold a grpc_slice instead of the *array.

@mmoanis yes - I believe it has been renamed since the issue was published. /cc @vjpai

Stale issue, closing


[bug] Unable to connect to hardhat wallet

Is there an existing issue for this?

[X] I have searched the existing issues

RainbowKit Version
0.5.0
wagmi Version
0.6.4
Current Behavior
Throwing error while trying to connect with hardhat:

Expected Behavior
It should connect with hardhat local node.
Steps To Reproduce
"@rainbow-me/rainbowkit": "^0.5.0",
"wagmi": "^0.6.4",

Adding chain.hardhat in configured chains, this error is thrown.
Link to Minimal Reproducible Example (CodeSandbox, StackBlitz, etc.)
https://codesandbox.io/s/rainbowkit-nextjs-forked-f49oib
Anything else?
No response

Hey! You can fix this by adding your Hardhat network into MetaMask. :)
https://support.chainstack.com/hc/en-us/articles/4408642503449-Using-MetaMask-with-a-Hardhat-node
Let me know if you have any issues setting this up!


docker.errors.NotFound: 404 Client Error when launching MongoDB on Ubuntu 22.04 running in WSL2.

Describe the bug
...expected it to run?
To Reproduce
Provide a self-contained code snippet that illustrates the bug or unexpected behavior. Ideally, send a Pull Request to illustrate with a test that illustrates the problem.
from motor.motor_asyncio import AsyncIOMotorClient, AsyncIOMotorCollection
from testcontainers.core.container import DockerContainer
from testcontainers.mongodb import MongoDbContainer
from testcontainers.core.waiting_utils import wait_for

async def test_db():
    with DockerContainer("mongodb/mongodb-community-server:latest").with_bind_ports(27017, 27017) as mongo_container:
        def connect():
            return AsyncIOMotorClient("mongodb://{}:{}".format(mongo_container.get_container_host_ip(),
                                                           mongo_container.get_exposed_port(27017)))

    db = wait_for(connect).primer
    result = db["restaurants"].insert_one(
        {
            "address": {
                "street": "2 Avenue",
                "zipcode": "10075",
                "building": "1480",
                "coord": [-73.9557413, 40.7720266]
            },
            "borough": "Manhattan",
            "cuisine": "Italian",
            "name": "Vella",
            "restaurant_id": "41704620"
        }
    )
    cursor = db.restaurants.find({"borough": "Manhattan"})
    for document in await cursor.to_list(1000):
        print(document)

Runtime environment
Provide a summary of your runtime environment. Which operating system, python version, and docker version are you using? What is the version of testcontainers-python you are using? You can run the following commands to get the relevant information.
# Get the operating system information (on a unix os).
$ uname -a
Linux DESKTOP-GJIUB03 <IP_ADDRESS>-microsoft-standard-WSL2 #1 SMP Fri Jan 27 02:56:13 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
# Get the python version.
$ python --version
Python 3.10.6
# Get the docker version and other docker information.
$ docker info
https://pastebin.com/raw/5meC1tZJ
# Get all python packages.
$ pip freeze
https://pastebin.com/raw/zJQfnQkb

Latest version of testcontainers-python and MongoDB.
Full traceback when I run the snippet: https://pastebin.com/raw/3TvwYiLa (warn me if I doxxed myself in somewhere)
I can launch this container inside WSL, so Docker is working. Weird.

Changed bind_ports to
with_bind_ports(27000, 27017) just to be sure if 27017 port is fucked, but no, same traceback again. I could launch Mongo shell inside a Docker container that runs at port 27000.


Clickhouse Operator Metrics - Metrics not found in prometheus

Hi,
I successfully setup a clickhouse cluster in my K8S and I would like to monitor it with prometheus/grafana.
The problem is that chi metrics are not available in my prometheus, for example "chi_clickhouse_metric_Uptime" does not exist.
And if I scrape the /metrics endpoint of clickhouse operator metrics service, I got this :
# HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles.
# TYPE go_gc_duration_seconds summary
go_gc_duration_seconds{quantile="0"} 2.5898e-05
go_gc_duration_seconds{quantile="0.25"} 6.6878e-05
go_gc_duration_seconds{quantile="0.5"} 6.9626e-05
go_gc_duration_seconds{quantile="0.75"} 9.9661e-05
go_gc_duration_seconds{quantile="1"} 0.000306351
go_gc_duration_seconds_sum 0.435853995
go_gc_duration_seconds_count 4792
# HELP go_goroutines Number of goroutines that currently exist.
# TYPE go_goroutines gauge
go_goroutines 13
# HELP go_info Information about the Go environment.
# TYPE go_info gauge
go_info{version="go1.19.6"} 1
# HELP go_memstats_alloc_bytes Number of bytes allocated and still in use.
# TYPE go_memstats_alloc_bytes gauge
go_memstats_alloc_bytes 7.557208e+06
# HELP go_memstats_alloc_bytes_total Total number of bytes allocated, even if freed.
# TYPE go_memstats_alloc_bytes_total counter
go_memstats_alloc_bytes_total 1.6656810224e+10
# HELP go_memstats_buck_hash_sys_bytes Number of bytes used by the profiling bucket hash table.
# TYPE go_memstats_buck_hash_sys_bytes gauge
go_memstats_buck_hash_sys_bytes 5245
# HELP go_memstats_frees_total Total number of frees.
# TYPE go_memstats_frees_total counter
go_memstats_frees_total 3.043612e+07
# HELP go_memstats_gc_sys_bytes Number of bytes used for garbage collection system metadata.
# TYPE go_memstats_gc_sys_bytes gauge
go_memstats_gc_sys_bytes 9.539e+06
# HELP go_memstats_heap_alloc_bytes Number of heap bytes allocated and still in use.
# TYPE go_memstats_heap_alloc_bytes gauge
go_memstats_heap_alloc_bytes 7.557208e+06
# HELP go_memstats_heap_idle_bytes Number of heap bytes waiting to be used.
# TYPE go_memstats_heap_idle_bytes gauge
go_memstats_heap_idle_bytes 7.716864e+06
# HELP go_memstats_heap_inuse_bytes Number of heap bytes that are in use.
# TYPE go_memstats_heap_inuse_bytes gauge
go_memstats_heap_inuse_bytes 1.1419648e+07
# HELP go_memstats_heap_objects Number of allocated objects.
# TYPE go_memstats_heap_objects gauge
go_memstats_heap_objects 19533
# HELP go_memstats_heap_released_bytes Number of heap bytes released to OS.
# TYPE go_memstats_heap_released_bytes gauge
go_memstats_heap_released_bytes 6.258688e+06
# HELP go_memstats_heap_sys_bytes Number of heap bytes obtained from system.
# TYPE go_memstats_heap_sys_bytes gauge
go_memstats_heap_sys_bytes 1.9136512e+07
# HELP go_memstats_last_gc_time_seconds Number of seconds since 1970 of last garbage collection.
# TYPE go_memstats_last_gc_time_seconds gauge
go_memstats_last_gc_time_seconds 1.679484628839633e+09
# HELP go_memstats_lookups_total Total number of pointer lookups.
# TYPE go_memstats_lookups_total counter
go_memstats_lookups_total 0
# HELP go_memstats_mallocs_total Total number of mallocs.
# TYPE go_memstats_mallocs_total counter
go_memstats_mallocs_total 3.0455653e+07
# HELP go_memstats_mcache_inuse_bytes Number of bytes in use by mcache structures.
# TYPE go_memstats_mcache_inuse_bytes gauge
go_memstats_mcache_inuse_bytes 19200
# HELP go_memstats_mcache_sys_bytes Number of bytes used for mcache structures obtained from system.
# TYPE go_memstats_mcache_sys_bytes gauge
go_memstats_mcache_sys_bytes 31200
# HELP go_memstats_mspan_inuse_bytes Number of bytes in use by mspan structures.
# TYPE go_memstats_mspan_inuse_bytes gauge
go_memstats_mspan_inuse_bytes 262656
# HELP go_memstats_mspan_sys_bytes Number of bytes used for mspan structures obtained from system.
# TYPE go_memstats_mspan_sys_bytes gauge
go_memstats_mspan_sys_bytes 325440
# HELP go_memstats_next_gc_bytes Number of heap bytes when next garbage collection will take place.
# TYPE go_memstats_next_gc_bytes gauge
go_memstats_next_gc_bytes 1.3117272e+07
# HELP go_memstats_other_sys_bytes Number of bytes used for other system allocations.
# TYPE go_memstats_other_sys_bytes gauge
go_memstats_other_sys_bytes 2.664635e+06
# HELP go_memstats_stack_inuse_bytes Number of bytes in use by the stack allocator.
# TYPE go_memstats_stack_inuse_bytes gauge
go_memstats_stack_inuse_bytes 1.835008e+06
# HELP go_memstats_stack_sys_bytes Number of bytes obtained from system for stack allocator.
# TYPE go_memstats_stack_sys_bytes gauge
go_memstats_stack_sys_bytes 1.835008e+06
# HELP go_memstats_sys_bytes Number of bytes obtained from system.
# TYPE go_memstats_sys_bytes gauge
go_memstats_sys_bytes 3.353704e+07
# HELP go_threads Number of OS threads created.
# TYPE go_threads gauge
go_threads 22
# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds.
# TYPE process_cpu_seconds_total counter
process_cpu_seconds_total 249.5
# HELP process_max_fds Maximum number of open file descriptors.
# TYPE process_max_fds gauge
process_max_fds 65535
# HELP process_open_fds Number of open file descriptors.
# TYPE process_open_fds gauge
process_open_fds 11
# HELP process_resident_memory_bytes Resident memory size in bytes.
# TYPE process_resident_memory_bytes gauge
process_resident_memory_bytes 4.2897408e+07
# HELP process_start_time_seconds Start time of the process since unix epoch in seconds.
# TYPE process_start_time_seconds gauge
process_start_time_seconds 1.67896361366e+09
# HELP process_virtual_memory_bytes Virtual memory size in bytes.
# TYPE process_virtual_memory_bytes gauge
process_virtual_memory_bytes 7.6132352e+08
# HELP process_virtual_memory_max_bytes Maximum amount of virtual memory available in bytes.
# TYPE process_virtual_memory_max_bytes gauge
process_virtual_memory_max_bytes 1.8446744073709552e+19
# HELP promhttp_metric_handler_requests_in_flight Current number of scrapes being served.
# TYPE promhttp_metric_handler_requests_in_flight gauge
promhttp_metric_handler_requests_in_flight 1
# HELP promhttp_metric_handler_requests_total Total number of scrapes by HTTP status code.
# TYPE promhttp_metric_handler_requests_total counter
promhttp_metric_handler_requests_total{code="200"} 33709
promhttp_metric_handler_requests_total{code="500"} 0
promhttp_metric_handler_requests_total{code="503"} 0

So as you can see I have nothing related to clickhouse itself... someone already got this problem ?

check logs inside
clickhouse-operator and metrics-exporter container inside clickhouse-operator deployment pod
could you share
kubectl get chi --all-namespaces
kubectl log -n <namespace_where_clickhouse_operator_installed> -l app=clickhouse-operator -c metrics-exporter --sinrce=24h

kubectl logs -n logs -l app=clickhouse-operator -c clickhouse-operator --since=24h

?

I saw errors of this type in clickhouse pods :
2023.03.23 09:51:50.523013 [ 225 ] {}  DNSResolver: Cannot resolve host (chi-clickhouse-clickhouse-0-1), error 0: No address found.
2023.03.23 09:51:50.524736 [ 225 ] {}  DNSResolver: Cached hosts not found: chi-clickhouse-clickhouse-0-1
It looks like there is an issue of sync between the cluster

I forgot to add this in the configuration file : prometheus/metrics: 'true'
this is not clean which config file do you mean?
Did you add this to metadata.annotations inside clickhouse-operator deployment.spec.template or something else?

chi_clickhouse_metric_fetch_errors
this metric means metrics-exporter cant' collect metrics from clickhouse-server

2023.03.23 09:51:50.523013 [ 225 ] {} DNSResolver: Cannot resolve host (chi-clickhouse-clickhouse-0-1), error 0: No address found.

kubectl get svc -n logs chi-clickhouse-clickhouse-0-1 ?

Yes this is in the deployment.spec.template.metadata.annotations :
kind: Deployment
apiVersion: apps/v1
metadata:
  name: clickhouse-operator
  namespace: logs
  labels:
    clickhouse.altinity.com/chop: 0.20.3
    app: clickhouse-operator
spec:
  replicas: 1
  selector:
    matchLabels:
      app: clickhouse-operator
  template:
    metadata:
      labels:
        app: clickhouse-operator
      annotations:
        prometheus.io/port: '8888'
        prometheus/endpoint: '/metrics'
        prometheus/metrics: 'true'
        prometheus/events: 'true'
        prometheus/asynchronous_metrics: 'true'
        prometheus/status_info: 'true'
    spec:
      serviceAccountName: clickhouse-operator
      volumes:
        - name: etc-clickhouse-operator-folder
          configMap:
            name: etc-clickhouse-operator-files
        - name: etc-clickhouse-operator-confd-folder
          configMap:
            name: etc-clickhouse-operator-confd-files
        - name: etc-clickhouse-operator-configd-folder
          configMap:
            name: etc-clickhouse-operator-configd-files
        - name: etc-clickhouse-operator-templatesd-folder
          configMap:
            name: etc-clickhouse-operator-templatesd-files
        - name: etc-clickhouse-operator-usersd-folder
          configMap:
            name: etc-clickhouse-operator-usersd-files
      containers:
        - name: clickhouse-operator
          image: altinity/clickhouse-operator:0.20.3
          imagePullPolicy: Always
          volumeMounts:
            - name: etc-clickhouse-operator-folder
              mountPath: /etc/clickhouse-operator
            - name: etc-clickhouse-operator-confd-folder
              mountPath: /etc/clickhouse-operator/conf.d
            - name: etc-clickhouse-operator-configd-folder
              mountPath: /etc/clickhouse-operator/config.d
            - name: etc-clickhouse-operator-templatesd-folder
              mountPath: /etc/clickhouse-operator/templates.d
            - name: etc-clickhouse-operator-usersd-folder
              mountPath: /etc/clickhouse-operator/users.d
          env:
            # Pod-specific
            # spec.nodeName: ip-172-20-52-62.ec2.internal
            - name: OPERATOR_POD_NODE_NAME
              valueFrom:
                fieldRef:
                  fieldPath: spec.nodeName
            # metadata.name: clickhouse-operator-6f87589dbb-ftcsf
            - name: OPERATOR_POD_NAME
              valueFrom:
                fieldRef:
                  fieldPath: metadata.name
            # metadata.namespace: logs
            - name: OPERATOR_POD_NAMESPACE
              valueFrom:
                fieldRef:
                  fieldPath: metadata.namespace
            # status.podIP: <IP_ADDRESS>
            - name: OPERATOR_POD_IP
              valueFrom:
                fieldRef:
                  fieldPath: status.podIP
            # spec.serviceAccount: clickhouse-operator
            # spec.serviceAccountName: clickhouse-operator
            - name: OPERATOR_POD_SERVICE_ACCOUNT
              valueFrom:
                fieldRef:
                  fieldPath: spec.serviceAccountName

            # Container-specific
            - name: OPERATOR_CONTAINER_CPU_REQUEST
              valueFrom:
                resourceFieldRef:
                  containerName: clickhouse-operator
                  resource: requests.cpu
            - name: OPERATOR_CONTAINER_CPU_LIMIT
              valueFrom:
                resourceFieldRef:
                  containerName: clickhouse-operator
                  resource: limits.cpu
            - name: OPERATOR_CONTAINER_MEM_REQUEST
              valueFrom:
                resourceFieldRef:
                  containerName: clickhouse-operator
                  resource: requests.memory
            - name: OPERATOR_CONTAINER_MEM_LIMIT
              valueFrom:
                resourceFieldRef:
                  containerName: clickhouse-operator
                  resource: limits.memory

        - name: metrics-exporter
          image: altinity/metrics-exporter:0.20.3
          imagePullPolicy: Always
          volumeMounts:
            - name: etc-clickhouse-operator-folder
              mountPath: /etc/clickhouse-operator
            - name: etc-clickhouse-operator-confd-folder
              mountPath: /etc/clickhouse-operator/conf.d
            - name: etc-clickhouse-operator-configd-folder
              mountPath: /etc/clickhouse-operator/config.d
            - name: etc-clickhouse-operator-templatesd-folder
              mountPath: /etc/clickhouse-operator/templates.d
            - name: etc-clickhouse-operator-usersd-folder
              mountPath: /etc/clickhouse-operator/users.d
          env:
            # Pod-specific
            # spec.nodeName: ip-172-20-52-62.ec2.internal
            - name: OPERATOR_POD_NODE_NAME
              valueFrom:
                fieldRef:
                  fieldPath: spec.nodeName
            # metadata.name: clickhouse-operator-6f87589dbb-ftcsf
            - name: OPERATOR_POD_NAME
              valueFrom:
                fieldRef:
                  fieldPath: metadata.name
            # metadata.namespace: logs
            - name: OPERATOR_POD_NAMESPACE
              valueFrom:
                fieldRef:
                  fieldPath: metadata.namespace
            # status.podIP: <IP_ADDRESS>
            - name: OPERATOR_POD_IP
              valueFrom:
                fieldRef:
                  fieldPath: status.podIP
            # spec.serviceAccount: clickhouse-operator
            # spec.serviceAccountName: clickhouse-operator
            - name: OPERATOR_POD_SERVICE_ACCOUNT
              valueFrom:
                fieldRef:
                  fieldPath: spec.serviceAccountName

            # Container-specific
            - name: OPERATOR_CONTAINER_CPU_REQUEST
              valueFrom:
                resourceFieldRef:
                  containerName: clickhouse-operator
                  resource: requests.cpu
            - name: OPERATOR_CONTAINER_CPU_LIMIT
              valueFrom:
                resourceFieldRef:
                  containerName: clickhouse-operator
                  resource: limits.cpu
            - name: OPERATOR_CONTAINER_MEM_REQUEST
              valueFrom:
                resourceFieldRef:
                  containerName: clickhouse-operator
                  resource: requests.memory
            - name: OPERATOR_CONTAINER_MEM_LIMIT
              valueFrom:
                resourceFieldRef:
                  containerName: clickhouse-operator
                  resource: limits.memory
          ports:
            - containerPort: 8888
              name: metrics
---

For the logs, what I already past to you is exactly what I get from the command output, I know it is a little bit strange ...
kubectl get svc -n logs chi-clickhouse-clickhouse-0-1 :
NAME                            TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)                      AGE
chi-clickhouse-clickhouse-0-1   ClusterIP   None         <none>        7001/TCP,7000/TCP,7002/TCP   11m

       prometheus/metrics: 'true'
        prometheus/events: 'true'
        prometheus/asynchronous_metrics: 'true'
        prometheus/status_info: 'true'

these annotations have no sense
remove it
these are settings for kind: ClickHouseInstallation (chi) for  spec.configuration.settings for clickhouse-server embedded Prometheus endpoint
metrics-exporter doesn't use embedded Prometheus endpoint in clickhouse-server
please share
kubectl logs -n logs -l app=clickhouse-operator -c metrics-exporter --since=10m

could you also share kubectl get cm -n logs etc-clickhouse-operator-files -o yaml config.yml -> access section without password?

Ok I will remove it.
kubectl logs -n logs -l app=clickhouse-operator -c metrics-exporter --since=10m (Yes this is the exact output)
fig-eu-de.yml
        table,
        disk,
        if(coalesce(reason,'unknown')='','detached_by_user',coalesce(reason,'unknown')) AS detach_reason
FROM system.detached_parts
GROUP BY
        database,
        table,
        disk,
        reason

kubectl get cm -n logs etc-clickhouse-operator-files -o yaml
apiVersion: v1
data:
  config.yaml: |
    # IMPORTANT
    # This file is auto-generated
    # Do not edit this file - all changes would be lost
    # Edit appropriate template in the following folder:
    # deploy/builder/templates-config
    # IMPORTANT
    #
    # Template parameters available:
    #   WATCH_NAMESPACES=
    #   CH_USERNAME_PLAIN=
    #   CH_PASSWORD_PLAIN=
    #   CH_CREDENTIALS_SECRET_NAMESPACE=
    #   CH_CREDENTIALS_SECRET_NAME=clickhouse-operator

    ################################################
    ##
    ## Watch Section
    ##
    ################################################
    watch:
      # List of namespaces where clickhouse-operator watches for events.
      # Concurrently running operators should watch on different namespaces.
      #namespaces: ["dev", "test"]
      namespaces: []

    clickhouse:
      configuration:
        ################################################
        ##
        ## Configuration Files Section
        ##
        ################################################
        file:
          path:
            # Path to the folder where ClickHouse configuration files common for all instances within a CHI are located.
            common: config.d
            # Path to the folder where ClickHouse configuration files unique for each instance (host) within a CHI are located.
            host: conf.d
            # Path to the folder where ClickHouse configuration files with users' settings are located.
            # Files are common for all instances within a CHI.
            user: users.d
        ################################################
        ##
        ## Configuration Users Section
        ##
        ################################################
        user:
          default:
            # Default values for ClickHouse user configuration
            # 1. user/profile - string
            # 2. user/quota - string
            # 3. user/networks/ip - multiple strings
            # 4. user/password - string
            profile: default
            quota: default
            networksIP:
              - "::1"
              - "<IP_ADDRESS>"
            password: "default"
        ################################################
        ##
        ## Configuration Network Section
        ##
        ################################################
        network:
          # Default host_regexp to limit network connectivity from outside
          hostRegexpTemplate: "(chi-{chi}-[^.]+\\d+-\\d+|clickhouse\\-{chi})\\.{namespace}\\.svc\\.cluster\\.local$"
      ################################################
      ##
      ## Access to ClickHouse instances
      ##
      ################################################
      access:
        # Possible values for `scheme` are:
        # 1. http
        # 2. https
        scheme: ""
        # ClickHouse credentials (username, password and port) to be used by the operator to connect to ClickHouse instances.
        # Used for:
        # 1. Metrics requests
        # 2. Schema maintenance
        # 3. DROP DNS CACHE
        # User with these credentials can be specified in additional ClickHouse .xml config files,
        # located in `clickhouse.configuration.file.path.user` folder
        username: ""
        password: ""
        rootCA: ""

        # Location of the k8s Secret with username and password to be used by the operator to connect to ClickHouse instances.
        # Can be used instead of explicitly specified username and password which are:
        # clickhouse.access.username
        # clickhouse.access.password
        # Secret should have two keys:
        # 1. username
        # 2. password
        secret:
          # Empty `namespace` means that k8s secret would be looked in the same namespace where operator's pod is running.
          namespace: "logs"
          # Empty `name` means no k8s Secret would be looked for
          name: "clickhouse-operator"
        # Port where to connect to ClickHouse instances to
        port: 8123

        # Timeouts used to limit connection and queries from the operator to ClickHouse instances
        # Specified in seconds.
        timeouts:
          connect: 2
          query: 5

      metrics:
        timeouts:
          collect: 9

    ################################################
    ##
    ## Templates Section
    ##
    ################################################
    template:
      chi:
        # Path to the folder where ClickHouseInstallation .yaml manifests are located.
        # Manifests are applied in sorted alpha-numeric order.
        path: templates.d

    ################################################
    ##
    ## Reconcile Section
    ##
    ################################################
    reconcile:
      runtime:
        # Max number of concurrent reconciles in progress
        threadsNumber: 10

      statefulSet:
        create:
          # What to do in case created StatefulSet is not in 'Ready' after `reconcile.statefulSet.update.timeout` seconds
          # Possible options:
          # 1. abort - do nothing, just break the process and wait for an admin to assist
          # 2. delete - delete newly created problematic StatefulSet
          # 3. ignore - ignore an error, pretend nothing happened and move on to the next StatefulSet
          onFailure: ignore

        update:
          # How many seconds to wait for created/updated StatefulSet to be 'Ready'
          timeout: 300
          # How many seconds to wait between checks/polls for created/updated StatefulSet status
          pollInterval: 5
          # What to do in case updated StatefulSet is not in 'Ready' after `reconcile.statefulSet.update.timeout` seconds
          # Possible options:
          # 1. abort - do nothing, just break the process and wait for an admin to assist
          # 2. rollback - delete Pod and rollback StatefulSet to previous Generation.
          # Pod would be recreated by StatefulSet based on rollback-ed configuration
          # 3. ignore - ignore an error, pretend nothing happened and move on to the next StatefulSet
          onFailure: rollback

      host:
        # Whether reconciler should wait for a host:
        # - to be excluded from a cluster
        # OR
        # - to be included into a cluster
        # respectfully
        wait:
          exclude: true
          include: false

    ################################################
    ##
    ## Annotations management
    ##
    ################################################
    annotation:
      # Applied when:
      #  1. Propagating annotations from the CHI's `metadata.annotations` to child objects' `metadata.annotations`,
      #  2. Propagating annotations from the CHI Template's `metadata.annotations` to CHI's `metadata.annotations`,
      # Include annotations from the following list:
      # Applied only when not empty. Empty list means "include all, no selection"
      include: []
      # Exclude annotations from the following list:
      exclude: []

    ################################################
    ##
    ## Labels management
    ##
    ################################################
    label:
      # Applied when:
      #  1. Propagating labels from the CHI's `metadata.labels` to child objects' `metadata.labels`,
      #  2. Propagating labels from the CHI Template's `metadata.labels` to CHI's `metadata.labels`,
      # Include labels from the following list:
      # Applied only when not empty. Empty list means "include all, no selection"
      include: []
      # Exclude labels from the following list:
      # Applied only when not empty. Empty list means "nothing to exclude, no selection"
      exclude: []
      # Whether to append *Scope* labels to StatefulSet and Pod.
      # Full list of available *scope* labels check in 'labeler.go'
      #  LabelShardScopeIndex
      #  LabelReplicaScopeIndex
      #  LabelCHIScopeIndex
      #  LabelCHIScopeCycleSize
      #  LabelCHIScopeCycleIndex
      #  LabelCHIScopeCycleOffset
      #  LabelClusterScopeIndex
      #  LabelClusterScopeCycleSize
      #  LabelClusterScopeCycleIndex
      #  LabelClusterScopeCycleOffset
      appendScope: "no"

    ################################################
    ##
    ## StatefulSet management
    ##
    ################################################
    statefulSet:
      revisionHistoryLimit: 0

    ################################################
    ##
    ## Pod management
    ##
    ################################################
    pod:
      # Grace period for Pod termination.
      # How many seconds to wait between sending
      # SIGTERM and SIGKILL during Pod termination process.
      # Increase this number is case of slow shutdown.
      terminationGracePeriod: 30

    ################################################
    ##
    ## Log parameters
    ##
    ################################################
    logger:
      logtostderr: "true"
      alsologtostderr: "false"
      v: "1"
      stderrthreshold: ""
      vmodule: ""
      log_backtrace_at: ""
kind: ConfigMap
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","data":{"config.yaml":"# IMPORTANT\n# This file is auto-generated\n# Do not edit this file - all changes would be lost\n# Edit appropriate template in the following folder:\n# deploy/builder/templates-config\n# IMPORTANT\n#\n# Template parameters available:\n#   WATCH_NAMESPACES=\n#   CH_USERNAME_PLAIN=\n#   CH_PASSWORD_PLAIN=\n#   CH_CREDENTIALS_SECRET_NAMESPACE=\n#   CH_CREDENTIALS_SECRET_NAME=clickhouse-operator\n\n################################################\n##\n## Watch Section\n##\n################################################\nwatch:\n  # List of namespaces where clickhouse-operator watches for events.\n  # Concurrently running operators should watch on different namespaces.\n  #namespaces: [\"dev\", \"test\"]\n  namespaces: []\n\nclickhouse:\n  configuration:\n    ################################################\n    ##\n    ## Configuration Files Section\n    ##\n    ################################################\n    file:\n      path:\n        # Path to the folder where ClickHouse configuration files common for all instances within a CHI are located.\n        common: config.d\n        # Path to the folder where ClickHouse configuration files unique for each instance (host) within a CHI are located.\n        host: conf.d\n        # Path to the folder where ClickHouse configuration files with users' settings are located.\n        # Files are common for all instances within a CHI.\n        user: users.d\n    ################################################\n    ##\n    ## Configuration Users Section\n    ##\n    ################################################\n    user:\n      default:\n        # Default values for ClickHouse user configuration\n        # 1. user/profile - string\n        # 2. user/quota - string\n        # 3. user/networks/ip - multiple strings\n        # 4. user/password - string\n        profile: default\n        quota: default\n        networksIP:\n          - \"::1\"\n          - \"<IP_ADDRESS>\"\n        password: \"default\"\n    ################################################\n    ##\n    ## Configuration Network Section\n    ##\n    ################################################\n    network:\n      # Default host_regexp to limit network connectivity from outside\n      hostRegexpTemplate: \"(chi-{chi}-[^.]+\\\\d+-\\\\d+|clickhouse\\\\-{chi})\\\\.{namespace}\\\\.svc\\\\.cluster\\\\.local$\"\n  ################################################\n  ##\n  ## Access to ClickHouse instances\n  ##\n  ################################################\n  access:\n    # Possible values for `scheme` are:\n    # 1. http\n    # 2. https\n    scheme: \"\"\n    # ClickHouse credentials (username, password and port) to be used by the operator to connect to ClickHouse instances.\n    # Used for:\n    # 1. Metrics requests\n    # 2. Schema maintenance\n    # 3. DROP DNS CACHE\n    # User with these credentials can be specified in additional ClickHouse .xml config files,\n    # located in `clickhouse.configuration.file.path.user` folder\n    username: \"\"\n    password: \"\"\n    rootCA: \"\"\n\n    # Location of the k8s Secret with username and password to be used by the operator to connect to ClickHouse instances.\n    # Can be used instead of explicitly specified username and password which are:\n    # clickhouse.access.username\n    # clickhouse.access.password\n    # Secret should have two keys:\n    # 1. username\n    # 2. password\n    secret:\n      # Empty `namespace` means that k8s secret would be looked in the same namespace where operator's pod is running.\n      namespace: \"logs\"\n      # Empty `name` means no k8s Secret would be looked for\n      name: \"clickhouse-operator\"\n    # Port where to connect to ClickHouse instances to\n    port: 8123\n\n    # Timeouts used to limit connection and queries from the operator to ClickHouse instances\n    # Specified in seconds.\n    timeouts:\n      connect: 2\n      query: 5\n\n  metrics:\n    timeouts:\n      collect: 9\n\n################################################\n##\n## Templates Section\n##\n################################################\ntemplate:\n  chi:\n    # Path to the folder where ClickHouseInstallation .yaml manifests are located.\n    # Manifests are applied in sorted alpha-numeric order.\n    path: templates.d\n\n################################################\n##\n## Reconcile Section\n##\n################################################\nreconcile:\n  runtime:\n    # Max number of concurrent reconciles in progress\n    threadsNumber: 10\n\n  statefulSet:\n    create:\n      # What to do in case created StatefulSet is not in 'Ready' after `reconcile.statefulSet.update.timeout` seconds\n      # Possible options:\n      # 1. abort - do nothing, just break the process and wait for an admin to assist\n      # 2. delete - delete newly created problematic StatefulSet\n      # 3. ignore - ignore an error, pretend nothing happened and move on to the next StatefulSet\n      onFailure: ignore\n\n    update:\n      # How many seconds to wait for created/updated StatefulSet to be 'Ready'\n      timeout: 300\n      # How many seconds to wait between checks/polls for created/updated StatefulSet status\n      pollInterval: 5\n      # What to do in case updated StatefulSet is not in 'Ready' after `reconcile.statefulSet.update.timeout` seconds\n      # Possible options:\n      # 1. abort - do nothing, just break the process and wait for an admin to assist\n      # 2. rollback - delete Pod and rollback StatefulSet to previous Generation.\n      # Pod would be recreated by StatefulSet based on rollback-ed configuration\n      # 3. ignore - ignore an error, pretend nothing happened and move on to the next StatefulSet\n      onFailure: rollback\n\n  host:\n    # Whether reconciler should wait for a host:\n    # - to be excluded from a cluster\n    # OR\n    # - to be included into a cluster\n    # respectfully\n    wait:\n      exclude: true\n      include: false\n\n################################################\n##\n## Annotations management\n##\n################################################\nannotation:\n  # Applied when:\n  #  1. Propagating annotations from the CHI's `metadata.annotations` to child objects' `metadata.annotations`,\n  #  2. Propagating annotations from the CHI Template's `metadata.annotations` to CHI's `metadata.annotations`,\n  # Include annotations from the following list:\n  # Applied only when not empty. Empty list means \"include all, no selection\"\n  include: []\n  # Exclude annotations from the following list:\n  exclude: []\n\n################################################\n##\n## Labels management\n##\n################################################\nlabel:\n  # Applied when:\n  #  1. Propagating labels from the CHI's `metadata.labels` to child objects' `metadata.labels`,\n  #  2. Propagating labels from the CHI Template's `metadata.labels` to CHI's `metadata.labels`,\n  # Include labels from the following list:\n  # Applied only when not empty. Empty list means \"include all, no selection\"\n  include: []\n  # Exclude labels from the following list:\n  # Applied only when not empty. Empty list means \"nothing to exclude, no selection\"\n  exclude: []\n  # Whether to append *Scope* labels to StatefulSet and Pod.\n  # Full list of available *scope* labels check in 'labeler.go'\n  #  LabelShardScopeIndex\n  #  LabelReplicaScopeIndex\n  #  LabelCHIScopeIndex\n  #  LabelCHIScopeCycleSize\n  #  LabelCHIScopeCycleIndex\n  #  LabelCHIScopeCycleOffset\n  #  LabelClusterScopeIndex\n  #  LabelClusterScopeCycleSize\n  #  LabelClusterScopeCycleIndex\n  #  LabelClusterScopeCycleOffset\n  appendScope: \"no\"\n\n################################################\n##\n## StatefulSet management\n##\n################################################\nstatefulSet:\n  revisionHistoryLimit: 0\n\n################################################\n##\n## Pod management\n##\n################################################\npod:\n  # Grace period for Pod termination.\n  # How many seconds to wait between sending\n  # SIGTERM and SIGKILL during Pod termination process.\n  # Increase this number is case of slow shutdown.\n  terminationGracePeriod: 30\n\n################################################\n##\n## Log parameters\n##\n################################################\nlogger:\n  logtostderr: \"true\"\n  alsologtostderr: \"false\"\n  v: \"1\"\n  stderrthreshold: \"\"\n  vmodule: \"\"\n  log_backtrace_at: \"\"\n"},"kind":"ConfigMap","metadata":{"annotations":{},"labels":{"app":"clickhouse-operator","clickhouse.altinity.com/chop":"0.20.3"},"name":"etc-clickhouse-operator-files","namespace":"logs"}}
  creationTimestamp: "2023-03-22T17:16:58Z"
  labels:
    app: clickhouse-operator
    clickhouse.altinity.com/chop: 0.20.3
  name: etc-clickhouse-operator-files
  namespace: logs
  resourceVersion: "10530280"
  uid: 3d13a70c-ff8e-4e1e-988e-662857ef75df

kubectl logs -n logs -l app=clickhouse-operator -c metrics-exporter --since=10m (Yes this is the exact output)

this is can't be exact output
cause this is part of multi line string
check
kubectl logs -n logs -l app=clickhouse-operator -c metrics-exporter --tail=100

check secret is exists
kubectl get secret -n logs clickhouse-operator

kubectl logs -n logs -l app=clickhouse-operator -c metrics-exporter --tail=100
W0323 13:26:18.485310       1 exporter.go:257] Error querying system.disks for host chi-clickhouse-clickhouse-0-2.logs.svc.cluster.local err: FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-2.logs.svc.cluster.local:8123/) for SQL:   SELECT
      name,
         toString(free_space) AS free_space,
toString(total_space) AS total_space
     FROM system.disks

E0323 13:26:18.485399       1 connection.go:97] connect():FAILED Ping(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local:8123/). Err: dial tcp <IP_ADDRESS>:8123: connect: connection refused
E0323 13:26:18.485484       1 connection.go:125] QueryContext():FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local:8123/) for SQL:   SELECT
      name,
         toString(free_space) AS free_space,
toString(total_space) AS total_space
     FROM system.disks
W0323 13:26:18.485510       1 exporter.go:257] Error querying system.disks for host chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local err: FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local:8123/) for SQL:   SELECT
      name,
         toString(free_space) AS free_space,
toString(total_space) AS total_space
     FROM system.disks

E0323 13:26:18.487079       1 connection.go:97] connect():FAILED Ping(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-0.logs.svc.cluster.local:8123/). Err: dial tcp <IP_ADDRESS>:8123: connect: connection refused
E0323 13:26:18.487192       1 connection.go:125] QueryContext():FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-0.logs.svc.cluster.local:8123/) for SQL: SELECT
        count() AS detached_parts,
        database,
        table,
        disk,
        if(coalesce(reason,'unknown')='','detached_by_user',coalesce(reason,'unknown')) AS detach_reason
FROM system.detached_parts
GROUP BY
        database,
        table,
        disk,
        reason

W0323 13:26:18.487244       1 exporter.go:268] Error querying system.detached_parts for host chi-clickhouse-clickhouse-0-0.logs.svc.cluster.local err: FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-0.logs.svc.cluster.local:8123/) for SQL: SELECT
        count() AS detached_parts,
        database,
        table,
        disk,
        if(coalesce(reason,'unknown')='','detached_by_user',coalesce(reason,'unknown')) AS detach_reason
FROM system.detached_parts
GROUP BY
        database,
        table,
        disk,
        reason

E0323 13:26:18.487827       1 connection.go:97] connect():FAILED Ping(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-2.logs.svc.cluster.local:8123/). Err: dial tcp <IP_ADDRESS>:8123: connect: connection refused
E0323 13:26:18.487904       1 connection.go:125] QueryContext():FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-2.logs.svc.cluster.local:8123/) for SQL: SELECT
        count() AS detached_parts,
        database,
        table,
        disk,
        if(coalesce(reason,'unknown')='','detached_by_user',coalesce(reason,'unknown')) AS detach_reason
FROM system.detached_parts
GROUP BY
        database,
        table,
        disk,
        reason

W0323 13:26:18.487936       1 exporter.go:268] Error querying system.detached_parts for host chi-clickhouse-clickhouse-0-2.logs.svc.cluster.local err: FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-2.logs.svc.cluster.local:8123/) for SQL: SELECT
        count() AS detached_parts,
        database,
        table,
        disk,
        if(coalesce(reason,'unknown')='','detached_by_user',coalesce(reason,'unknown')) AS detach_reason
FROM system.detached_parts
GROUP BY
        database,
        table,
        disk,
        reason

E0323 13:26:18.488223       1 connection.go:97] connect():FAILED Ping(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local:8123/). Err: dial tcp <IP_ADDRESS>:8123: connect: connection refused
E0323 13:26:18.488278       1 connection.go:125] QueryContext():FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local:8123/) for SQL: SELECT
        count() AS detached_parts,
        database,
        table,
        disk,
        if(coalesce(reason,'unknown')='','detached_by_user',coalesce(reason,'unknown')) AS detach_reason
FROM system.detached_parts
GROUP BY
        database,
        table,
        disk,
        reason

W0323 13:26:18.488306       1 exporter.go:268] Error querying system.detached_parts for host chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local err: FAILED connect(http://clickhouse_operator:***@chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local:8123/) for SQL: SELECT
        count() AS detached_parts,
        database,
        table,
        disk,
        if(coalesce(reason,'unknown')='','detached_by_user',coalesce(reason,'unknown')) AS detach_reason
FROM system.detached_parts
GROUP BY
        database,
        table,
        disk,
        reason

kubectl get secret -n logs clickhouse-operator
NAME                  TYPE     DATA   AGE
clickhouse-operator   Opaque   2      138m

So it looks like there is a connection problem

tcp <IP_ADDRESS>:8123: connect: connection refused

Could you share your CHI manifest?
kubectl get chi -n logs clickhouse -o yaml

kubectl get chi -n logs clickhouse -o yaml
apiVersion: clickhouse.altinity.com/v1
kind: ClickHouseInstallation
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"clickhouse.altinity.com/v1","kind":"ClickHouseInstallation","metadata":{"annotations":{},"name":"clickhouse","namespace":"logs"},"spec":{"configuration":{"clusters":[{"layout":{"replicasCount":3,"shardsCount":1},"name":"clickhouse","templates":{"hostTemplate":"host-template-custom-ports","podTemplate":"clickhouse-stable","volumeClaimTemplate":"storage-vc-template"}}],"users":{"test/default":"secret","test/networks/ip":"::/0","test/password":"test","test/profile":"default","test/quota":"default"},"zookeeper":{"nodes":[{"host":"clickhouse-zookeeper.logs","port":2181}]}},"templates":{"hostTemplates":[{"name":"host-template-custom-ports","spec":{"httpPort":7001,"interserverHTTPPort":7002,"tcpPort":7000}}],"podTemplates":[{"name":"clickhouse-stable","spec":{"containers":[{"image":"altinity/clickhouse-server:<IP_ADDRESS>.altinitystable","name":"clickhouse","resources":{"limits":{"cpu":"12","memory":"32Gi"},"requests":{"cpu":"8","memory":"16Gi"}},"volumeMounts":[{"mountPath":"/var/lib/clickhouse","name":"storage-vc-template"}]}]}}],"volumeClaimTemplates":[{"name":"storage-vc-template","reclaimPolicy":"Retain","spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"2000Gi"}},"storageClassName":"logs-clickhouse-worker"}}]}}}
  creationTimestamp: "2023-03-23T11:27:09Z"
  finalizers:
  - finalizer.clickhouseinstallation.altinity.com
  generation: 1
  name: clickhouse
  namespace: logs
  resourceVersion: "10751235"
  uid: d0940cbc-3e53-44a0-ad9d-f6076d9ebcd1
spec:
  configuration:
    clusters:
    - layout:
        replicasCount: 3
        shardsCount: 1
      name: clickhouse
      templates:
        hostTemplate: host-template-custom-ports
        podTemplate: clickhouse-stable
        volumeClaimTemplate: storage-vc-template
    users:
      test/default: secret
      test/networks/ip: ::/0
      test/password: test
      test/profile: default
      test/quota: default
    zookeeper:
      nodes:
      - host: clickhouse-zookeeper.logs
        port: 2181
  templates:
    hostTemplates:
    - name: host-template-custom-ports
      spec:
        httpPort: 7001
        interserverHTTPPort: 7002
        tcpPort: 7000
    podTemplates:
    - name: clickhouse-stable
      spec:
        containers:
        - image: altinity/clickhouse-server:<IP_ADDRESS>.altinitystable
          name: clickhouse
          resources:
            limits:
              cpu: "12"
              memory: 32Gi
            requests:
              cpu: "8"
              memory: 16Gi
          volumeMounts:
          - mountPath: /var/lib/clickhouse
            name: storage-vc-template
    volumeClaimTemplates:
    - name: storage-vc-template
      reclaimPolicy: Retain
      spec:
        accessModes:
        - ReadWriteOnce
        resources:
          requests:
            storage: 2000Gi
        storageClassName: logs-clickhouse-worker
status:
  action: reconcile completed
  actions:
  - 2023-03-23T11:28:37.165359862Z reconcile completed
  - 2023-03-23T11:27:10.131585795Z reconcile started
  chop-commit: 5410bdb
  chop-date: 2023-02-16T06:56:45
  chop-ip: <IP_ADDRESS>
  chop-version: 0.20.3
  clusters: 1
  endpoint: clickhouse-clickhouse.logs.svc.cluster.local
  fqdns:
  - chi-clickhouse-clickhouse-0-0.logs.svc.cluster.local
  - chi-clickhouse-clickhouse-0-1.logs.svc.cluster.local
  - chi-clickhouse-clickhouse-0-2.logs.svc.cluster.local
  hosts: 3
  normalizedCompleted:
    apiVersion: clickhouse.altinity.com/v1
    kind: ClickHouseInstallation
    metadata:
      creationTimestamp: "2023-03-23T11:27:09Z"
      finalizers:
      - finalizer.clickhouseinstallation.altinity.com
      generation: 1
      name: clickhouse
      namespace: logs
      resourceVersion: "10751225"
      uid: d0940cbc-3e53-44a0-ad9d-f6076d9ebcd1
    spec:
      configuration:
        clusters:
        - layout:
            replicas:
            - name: "0"
              shards:
              - httpPort: 7001
                interserverHTTPPort: 7002
                name: 0-0
                tcpPort: 7000
                templates:
                  dataVolumeClaimTemplate: storage-vc-template
                  hostTemplate: host-template-custom-ports
                  podTemplate: clickhouse-stable
                  volumeClaimTemplate: storage-vc-template
              shardsCount: 1
              templates:
                dataVolumeClaimTemplate: storage-vc-template
                hostTemplate: host-template-custom-ports
                podTemplate: clickhouse-stable
                volumeClaimTemplate: storage-vc-template
            - name: "1"
              shards:
              - httpPort: 7001
                interserverHTTPPort: 7002
                name: 0-1
                tcpPort: 7000
                templates:
                  dataVolumeClaimTemplate: storage-vc-template
                  hostTemplate: host-template-custom-ports
                  podTemplate: clickhouse-stable
                  volumeClaimTemplate: storage-vc-template
              shardsCount: 1
              templates:
                dataVolumeClaimTemplate: storage-vc-template
                hostTemplate: host-template-custom-ports
                podTemplate: clickhouse-stable
                volumeClaimTemplate: storage-vc-template
            - name: "2"
              shards:
              - httpPort: 7001
                interserverHTTPPort: 7002
                name: 0-2
                tcpPort: 7000
                templates:
                  dataVolumeClaimTemplate: storage-vc-template
                  hostTemplate: host-template-custom-ports
                  podTemplate: clickhouse-stable
                  volumeClaimTemplate: storage-vc-template
              shardsCount: 1
              templates:
                dataVolumeClaimTemplate: storage-vc-template
                hostTemplate: host-template-custom-ports
                podTemplate: clickhouse-stable
                volumeClaimTemplate: storage-vc-template
            replicasCount: 3
            shards:
            - internalReplication: "True"
              name: "0"
              replicas:
              - httpPort: 7001
                interserverHTTPPort: 7002
                name: 0-0
                tcpPort: 7000
                templates:
                  dataVolumeClaimTemplate: storage-vc-template
                  hostTemplate: host-template-custom-ports
                  podTemplate: clickhouse-stable
                  volumeClaimTemplate: storage-vc-template
              - httpPort: 7001
                interserverHTTPPort: 7002
                name: 0-1
                tcpPort: 7000
                templates:
                  dataVolumeClaimTemplate: storage-vc-template
                  hostTemplate: host-template-custom-ports
                  podTemplate: clickhouse-stable
                  volumeClaimTemplate: storage-vc-template
              - httpPort: 7001
                interserverHTTPPort: 7002
                name: 0-2
                tcpPort: 7000
                templates:
                  dataVolumeClaimTemplate: storage-vc-template
                  hostTemplate: host-template-custom-ports
                  podTemplate: clickhouse-stable
                  volumeClaimTemplate: storage-vc-template
              replicasCount: 3
              templates:
                dataVolumeClaimTemplate: storage-vc-template
                hostTemplate: host-template-custom-ports
                podTemplate: clickhouse-stable
                volumeClaimTemplate: storage-vc-template
            shardsCount: 1
          name: clickhouse
          schemaPolicy:
            replica: All
            shard: All
          templates:
            hostTemplate: host-template-custom-ports
            podTemplate: clickhouse-stable
            volumeClaimTemplate: storage-vc-template
          zookeeper:
            nodes:
            - host: clickhouse-zookeeper.logs
              port: 2181
        users:
          clickhouse_operator/networks/ip:
          - <IP_ADDRESS>
          clickhouse_operator/password: ""
          clickhouse_operator/password_sha256_hex: 716b36073a90c6fe1d445ac1af85f4777c5b7a155cea359961826a030513e448
          default/networks/host_regexp: (chi-clickhouse-[^.]+\d+-\d+|clickhouse\-clickhouse)\.logs\.svc\.cluster\.local$
          default/networks/ip:
          - ::1
          - <IP_ADDRESS>
          - <IP_ADDRESS>
          - <IP_ADDRESS>
          - <IP_ADDRESS>
          default/profile: default
          default/quota: default
          test/default: secret
          test/networks/host_regexp: (chi-clickhouse-[^.]+\d+-\d+|clickhouse\-clickhouse)\.logs\.svc\.cluster\.local$
          test/networks/ip:
          - ::1
          - <IP_ADDRESS>
          - ::/0
          test/password_sha256_hex: 9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08
          test/profile: default
          test/quota: default
        zookeeper:
          nodes:
          - host: clickhouse-zookeeper.logs
            port: 2181
      defaults:
        replicasUseFQDN: "False"
        storageManagement: {}
      reconciling:
        cleanup:
          reconcileFailedObjects:
            configMap: Retain
            pvc: Retain
            service: Retain
            statefulSet: Retain
          unknownObjects:
            configMap: Delete
            pvc: Delete
            service: Delete
            statefulSet: Delete
        configMapPropagationTimeout: 10
        policy: unspecified
      stop: "False"
      taskID: a01fd8b9-ea7f-4972-927d-66cc7625301b
      templates:
        HostTemplatesIndex: {}
        PodTemplatesIndex: {}
        VolumeClaimTemplatesIndex: {}
        hostTemplates:
        - name: host-template-custom-ports
          portDistribution:
          - type: Unspecified
          spec:
            httpPort: 7001
            interserverHTTPPort: 7002
            tcpPort: 7000
        podTemplates:
        - metadata:
            creationTimestamp: null
          name: clickhouse-stable
          spec:
            containers:
            - image: altinity/clickhouse-server:<IP_ADDRESS>.altinitystable
              name: clickhouse
              resources:
                limits:
                  cpu: "12"
                  memory: 32Gi
                requests:
                  cpu: "8"
                  memory: 16Gi
              volumeMounts:
              - mountPath: /var/lib/clickhouse
                name: storage-vc-template
          zone: {}
        volumeClaimTemplates:
        - metadata:
            creationTimestamp: null
          name: storage-vc-template
          reclaimPolicy: Retain
          spec:
            accessModes:
            - ReadWriteOnce
            resources:
              requests:
                storage: 2000Gi
            storageClassName: logs-clickhouse-worker
      templating:
        policy: manual
      troubleshoot: "False"
  pod-ips:
  - <IP_ADDRESS>
  - <IP_ADDRESS>
  - <IP_ADDRESS>
  pods:
  - chi-clickhouse-clickhouse-0-0-0
  - chi-clickhouse-clickhouse-0-1-0
  - chi-clickhouse-clickhouse-0-2-0
  shards: 1
  status: Completed
  taskID: a01fd8b9-ea7f-4972-927d-66cc7625301b
  taskIDsCompleted:
  - a01fd8b9-ea7f-4972-927d-66cc7625301b

You define custom httpPort in your hostTemplates in chi
but  etc-clickhouse-operator-files access section contains 8123 port
you have two options
change httpPort in chi
or change configMap access section

Well found, you are expert ! Thank you a lot, you save me a lot of time :)


Improve metrics tests

What this PR does / why we need it:
Improve the prometheus metrics tests using more than one VMI instance in the tests.
Special notes for your reviewer:
Originated from review of https://github.com/kubevirt/kubevirt/pull/2501
Followup of https://github.com/kubevirt/kubevirt/pull/2512 - a big refactoring happened in between
Release note:

NONE

/retest

/retest

/test pull-kubevirt-e2e-os-3.11.0

/approve

Uhm, still failing with

[rfe_id:393][crit:high[vendor:cnv-qe@redhat.com][level:system]  VM Live Migration with a live-migrate eviction strategy set with  multiple VMIs with eviction policies set should not migrate more than  two VMIs at the same time from a node expand_less | 1m34s
-- | --
/root/go/src/kubevirt.io/kubevirt/tests/migration_test.go:1518 Unexpected error:     <*url.Error \| 0xc000544d50>: {         Op: "Get",         URL: "https://<IP_ADDRESS>:32772/apis/kubevirt.io/v1alpha3/namespaces/kubevirt-test-default/virtualmachineinstances/testvmizqdv9ttz7hxtxrbf5rtdcv7z2ph64vssn9wptcq27nnqb26x",         Err: {s: "unexpected EOF"},     }     Get https://<IP_ADDRESS>:32772/apis/kubevirt.io/v1alpha3/namespaces/kubevirt-test-default/virtualmachineinstances/testvmizqdv9ttz7hxtxrbf5rtdcv7z2ph64vssn9wptcq27nnqb26x: unexpected EOF occurred /gimme/.gimme/versions/go1.11.5.linux.amd64/src/runtime/asm_amd64.s:522

Which is unrelated to this PR. Let's try again.

/test pull-kubevirt-e2e-os-3.11.0


Company.marketCap casting int to string field

I'm getting this error in production:

Simple fix would be converting the marketCap string field to an int. However, I'm concerned that the API isn't returning a consistent type.
@davidlumley @mattatcha - can you confirm the API return type? Until this is fixed, enrichment is erroring in our app while chewing through our quota . . .

Here's the line https://github.com/clearbit/clearbit-go/blob/master/clearbit/company.go#L86

Looks like it was accidentally changed from an int to a string here: https://github.com/clearbit/clearbit-go/commit/ce4492d81bdb72e8f7a6e7cda321226a8eb93538
Would you mind submitting a PR to change it back? 🙏