Pilot external testing validation errors

New Issue Checklist

[ x] Updated fastlane to the latest version
[ x] I have read the Contribution Guidelines

Issue Description
When attempting to submit a new test build for external testing, I'm receiving errors from iTunes connect about missing fields. After scouring the internet and this repository, documentation & issues. I can't find a solution.
The error I get is:
Beta App Description is required. Feedback emails are required. Feedback emails must be in the format<EMAIL_ADDRESS>The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Marketing URLs are required. Beta App Description is required. Feedback emails are required. Feedback emails must be in the format<EMAIL_ADDRESS>The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Marketing URLs are required. Validation errors

These are the fields I normally have to input when submitting the build for external testing via itunes connect. It would be great if these fields could be implemented into Pilot to help automate this, we are releasing several builds a week and having to do this manually each time is becoming quite tedious.
Complete output when running fastlane, including the stack trace and command used
Fastlane version:
$ fastlane --version
fastlane 1.100.0

Run fastlane:
$ fastlane beta
[03:36:02]: ------------------------------
[03:36:02]: --- Step: default_platform ---
[03:36:02]: ------------------------------
[03:36:02]: Driving the lane 'ios beta' 🚀
[03:36:02]: -------------------
[03:36:02]: --- Step: pilot ---
[03:36:02]: -------------------
[03:36:02]: Login to iTunes Connect<EMAIL_ADDRESS>[03:36:03]: Login successful
[03:36:03]: Ready to upload new build to TestFlight (App:<PHONE_NUMBER>)...
[03:36:04]: Going to upload updated app to iTunes Connect
[03:36:04]: This might take a few minutes. Please don't interrupt the script.
[03:39:02]: iTunes Transporter successfully finished its job
[03:39:02]: ------------------------------------------------------------------------------------------------------
[03:39:02]: Successfully uploaded package to iTunes Connect. It might take a few minutes until it's visible online.
[03:39:02]: ------------------------------------------------------------------------------------------------------
[03:39:02]: Successfully uploaded the new binary to iTunes Connect
[03:39:02]: If you want to skip waiting for the processing to be finished, use the `skip_waiting_for_build_processing` option
[03:39:02]: Waiting for iTunes Connect to process the new build
[03:39:37]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:40:10]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:40:44]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:41:21]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:41:55]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:42:29]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:43:02]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:43:36]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:44:10]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:44:48]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:45:22]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:45:56]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:46:30]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:47:04]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:47:39]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:48:13]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:48:47]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:49:21]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:50:12]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:50:49]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:51:23]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:51:57]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:52:31]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:53:05]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:53:39]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:54:13]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:54:47]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:55:21]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:55:55]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:56:29]: Waiting for iTunes Connect to finish processing the new build (0.0.0 - 1033)
[03:56:59]: Successfully finished processing the build
[03:56:59]: You can now tweet:
[03:56:59]: iTunes Connect #iosprocessingtime 18 minutes
[03:57:00]: Successfully set the changelog for build
[03:57:00]: Distributing new build to testers
[03:57:14]: Variable Dump:
[03:57:14]: {:DEFAULT_PLATFORM=>:ios, :PLATFORM_NAME=>:ios, :LANE_NAME=>"ios beta"}
[03:57:14]: Beta App Description is required. Feedback emails are required. Feedback emails must be in the format<EMAIL_ADDRESS>The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Marketing URLs are required. Beta App Description is required. Feedback emails are required. Feedback emails must be in the format<EMAIL_ADDRESS>The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Marketing URLs are required. Validation errors

Configuration Files
Please copy the complete content of your Fastfile and any other configuration files you use below:
Fastfile:
default_platform :ios

platform :ios do
  before_all do
  end

  lane :beta do
    pilot(distribute_external: true, changelog: "New build for testing")
  end

  lane :release do
    snapshot
  end
end

Environment
fastlane version (run fastlane -v):
$ fastlane --version
fastlane 1.100.0
Do you use bundler to execute fastlane (i.e. bundle exec fastlane)?
no
Do you use a Ruby environment manager (e.g. chruby, rbenv, rvm)?
Not sure, running on BitRise.

Hi @jaffacake Thanks for reaching out. Do you have to do this each time or just once per bundle ID? Thanks for letting me know. 👍

It happens repeatedly for my app/bundle ID (correct me if I'm wrong, my
knowledge of bundle ID isn't great). But it's the same app, and we've done
about 10 external tests on this app and everything I've tried with pilot
it's failed so I have to do it manually in iTunes connect.
When I do it through iTunes connect I have to go through the wizard and
declare no major changes and encryption thing, not sure if that helps.
On Fri, 12 Aug 2016, 15:23 Todd Burner<EMAIL_ADDRESS>wrote:

Hi @jaffacake https://github.com/jaffacake Thanks for reaching out. Do
you have to do this each time or just once per bundle ID? Thanks for
letting me know. 👍
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fastlane/fastlane/issues/5733#issuecomment-239460129,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACgwx1z65Hw2dFdgf8wBgF7W0zyQhs-Tks5qfIH9gaJpZM4Ji9mV
.

Hi @jaffacake Thanks for following up.
Thanks!

We only use pilot at the moment as we haven't released our app, we've just
been testing it pre launch.
On Mon, 22 Aug 2016, 21:04 Todd Burner<EMAIL_ADDRESS>wrote:

Hi @jaffacake https://github.com/jaffacake Thanks for following up.

Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fastlane/fastlane/issues/5733#issuecomment-241532380,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACgwx2ZiSQIgSQ02dNfNl3pEZCapLPwBks5qigCvgaJpZM4Ji9mV
.

I'm running into the exact same issue as @TKBurner.
We're also just running pilot, and not deliver. Due to the error output described above, we just manually release Testflight builds to external testers through the web GUI. The interesting thing is that in the web GUI, all the relevant fields (e.g. "Beta App Description") are already filled in from previous tests, though "What to test" is blank in all languages except English -- we just delete the other translations and hit next in the web wizard, instead of translating "What to test" to all the languages we support.
Please let me know if I can provide any more details to diagnose the issue.

Hi @ILI4S have you tried running deliver before pilot? Let me know if that fixes it. Thanks!

@TKBurner it doesn't, though is this what you meant by running deliver before pilot?
deliver(skip_binary_upload: true, skip_screenshots: true, skip_metadata: true)

Since we're using pilot for uploading the binary and not uploading screenshots or metadata at this point, I thought this configuration might be appropriate, but I still get the same error messages as before Let me know if you had something else in mind.
Here are the relevant portions of my fastfile and below that the error message exactly is it appears in my console (seems to repeat itself more than a few times):
fastlane_version "1.98.0"

default_platform :ios

platform :ios do
  before_all do
    ENV["SLACK_URL"] = "https://hooks.slack.com/services/[...]"
    ENV["FL_HOCKEY_API_TOKEN"] = "[...]"
  end

  desc "Archive and share a build with external testers"
  lane :beta do
    archive
    deliver(skip_binary_upload: true, skip_screenshots: true, skip_metadata: true)
    pilot(distribute_external: true, changelog: "Bug fixes")
    hockey
  end

  def archive
    increment_build_number
    version = get_version_number()
    build = get_build_number()
    commit_version_bump(xcodeproj: "[...].xcodeproj", message: "#{version} (#{build})")
    gym(scheme: "[...]", configuration: "Release", build_path: "fastlane/build", output_directory: "fastlane/app")
  end
end

[!] The request could not be completed because:
	Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Beta App Description is required. Feedback emails must be in the format<EMAIL_ADDRESS>Feedback emails are required. Marketing URLs are required. The marketing URL you entered is invalid. Make sure you entered it correctly and try again.

Hi @ILI4S
Currently you can't provide all information from pilot as far as I know. Could you fill in the basic metadata manually on iTunes Connect and then try using pilot again?
Thanks!

For our app, I've manually populated this data multiple times (but only for
external testing builds) never for release. The data is already pre
populated in iTunes connect but pilot still fails.
On Fri, 26 Aug 2016, 17:39 Todd Burner<EMAIL_ADDRESS>wrote:

Hi @ILI4S https://github.com/ILI4S
Currently you can't provide all information from pilot as far as I know.
Could you fill in the basic metadata manually on iTunes Connect and then
try using pilot again?
Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fastlane/fastlane/issues/5733#issuecomment-242786086,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACgwx6d3WZRPQJLJ4-tvn_V9NnyCAChXks5qjxaqgaJpZM4Ji9mV
.

@TKBurner in iTunes Connect, we've already filled in Beta App Description, Feedback Email, Marketing URL, Contact Information, Demo Account, tester emails, etc. and all of these fields remain populated. The only thing we had to add manually to release the build to external testers is" "What to Test" and then "Have you made any significant changes to this build since your previous submission?" yes/no. Let me know if I can provide any more information.

@ILI4S Are you able to submit your app on iTC, or do you run into error messages? Definitely want to shoot this over to the core team. Thanks!

@TKBurner using the iTC  web interface, I'm able to submit my app for external beta testing no problem

@ILI4S Thanks! I've looped in the core team and we'll work with you on this thread. Hope that you have a wonderful day!

Facing a similar issue here! In my case the localised beta description for Italian is not going to be stored even if I insert it manually and start testing. Once I add a new build for testing Italian description is empty again. Is there any workaround I could consider? Spaceship?

@TKBurner I'm not getting the error anymore. I think the difference was setting up a Deliverfile--though I am not exactly sure. I also updated to the latest fastlane (1.102.0). The Fastfile configuration is still as specified above (running deliver before pilot with skip_binary_upload: true, skip_screenshots: true, skip_metadata: true). The Deliverfile only contains values for app_identifier and username.
Here's what I am primarily confused about:
Why is the deliver step required for pilot to distribute to external testers, since deliver is not uploading a build, not uploading metadata, nor screenshots? What is deliver actually doing? I'll admit, the question is a bit of an aside, as the process is working now.
If I find out any more details about why I am no longer getting the Beta App Description is required. Feedback emails are required. Feedback emails must be in the format<EMAIL_ADDRESS>The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Marketing URLs are required. Beta App Description is required. Feedback emails are required. Feedback emails must be in the format<EMAIL_ADDRESS>The marketing URL you entered is invalid. Make sure you entered it correctly and try again. Marketing URLs are required. Validation errors message, I'll be sure to post it here. Who knows, maybe apple fixed something in iTC?

@pplant Do you have a deliver file in place? @ILI4S It's possible that having the deliver file set some variables that weren't populated previously.

Hey, we actually just merged https://github.com/fastlane/fastlane/pull/6550, however currently you have to do one TestFlight release manually yourself, and from then on you can use pilot 👍


Exported functions missing comments

Here is one case. I haven't checked the other files yet.

That function should be returning a Context type.


Building URI vs URI()

Cookbook version
3.0.0
Chef-client version
13.8.5
Platform Details
CentOS 7.4.1708
Scenario:
Reliably generate URIs using the *base_uri provided attributes on tomcat_install
Steps to Reproduce:
Use tomcat_install and provide URI paths without the trailing /
Expected Result:
Download TAR and checksum without issue
Actual Result:
HTTP404 on the attempted URI - generated URI via URI.join() is incorrect
Details:
The root issue comes down to:

resources/install.rb#L120
resources/install.rb#L164

The methods for generating the URI are different. The URI.join() method truncates the string to the last /, whereas the tarball_uri method appends a / if it's missing.
Recommendation:
Use the tarball_uri method for building the checksum_uri - more foolproof.

@mengesb If you want to clean this up to fix this problem I'm 👍

you got it; been head-down on my own massive org re-write so I'll get to this likely soon

Hi,
Sous-Chefs have just taken over this cookbook and are currently baselining issues, if you think this issue is still relevant please re-open it
Thanks!


[Android][Samsung]: Tapping on special characters button from virtual keyboard triggers performPrivateCommand : onAppPrivateCommand @ EditableText: "_CastError (Null check operator used on a null value)" error.

I have a Samsung Tab S2 version 7 android tablet.
I can't find anywhere a solution for this error, in the EditableText widget.
What happens is that in a TextFormField widget with its respective TextEditingController, I enter the name of my user, however I need this character " _ ", when I change to special characters on the keyboard to search for it... I get this error...

flutter doctor -v
[√] Flutter (Channel stable, 2.8.1, on Microsoft Windows [version 10.0.19044.1466], locale fr-FR)
    • Flutter version 2.8.1 at C:\src\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 77d935af4d (7 weeks ago), 2021-12-16 08:37:33 -0800
    • Engine revision 890a5fca2e
    • Dart version 2.15.1

[√] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at C:\Users\Daniel ROLDAN\AppData\Local\Android\Sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = C:\Users\Daniel ROLDAN\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 2020.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[√] VS Code (version 1.63.2)
    • VS Code at C:\Users\Daniel ROLDAN\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.32.0

[√] Connected device (3 available)
    • SM T813 (mobile) • 3b8bea59055e2627 • android-arm64  • Android 7.0 (API 24)
    • Chrome (web)     • chrome           • web-javascript • Google Chrome 93.0.4577.63
    • Edge (web)       • edge             • web-javascript • Microsoft Edge 96.0.1054.62

• No issues found!

This is a small example because in all the fields where I can write I get this error...
TextEditingController accountController = TextEditingController();

   Padding(
      padding: EdgeInsets.fromLTRB(20, 0, 20, 0),
      child: TextFormField(
        scrollPadding: EdgeInsets.only(
          bottom: Device.screenHeight * 0.25,
        ),
        controller: accountController ,
        textInputAction:
            widget.isPassword ? TextInputAction.done : TextInputAction.next,
        onFieldSubmitted: () {},
        enableSuggestions: !widget.isPassword,
        autocorrect: !widget.isPassword,
        obscureText: widget.isPassword && this.isPasswordHidden!,
        validator: () {},
        style: TextStyle(
          fontSize: 20,
        ),
        decoration: InputDecoration(
          suffixIcon: IconButton(
                  icon: Icon(
                    Icons.visibility_off,
                    size: 30,
                    color: DesignConstants.loginFontColor,
                  ),
                  onPressed: (){},
                  splashRadius: 10,
                ),
          hintText: widget.labelText,
          helperText: widget.helperText,
        ),
      ),
    )

@kauzige
Can you provide complete error log ?
And If I understand correctly, you want to enter a username containing an underscore, and in order to do that you tap on the special char button which throws the null check error. Is that correct interpretation ?
Also to confirm this behavior, can you also check the same on latest master and see if it persists ?

@darshankawar
That's the weird thing here, when that happens it only happens when I use debug, and no errors appear in the console. The only thing that appears is this :

You are right, as the first image shows, when I click on the special characters I get that error.
On the other hand, I have already changed to the latest master version and changed some compile version parameters that it asked me for and it still keeps that error only on my tablet, because on the mobile phone that does not happen and yes, I have already updated my tablet to the latest version.
[√] Flutter (Channel master, 2.10.0-1.0.pre.375, on Microsoft Windows [version 10.0.19044.1466], locale fr-FR)
    • Flutter version 2.10.0-1.0.pre.375 at C:\src\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 13b8f5aa8f (2 hours ago), 2022-02-02 07:05:09 -0500
    • Engine revision 4ff105d625
    • Dart version 2.17.0 (build 2.17.0-75.0.dev)
    • DevTools version 2.10.0

[√] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at C:\Users\Daniel ROLDAN\AppData\Local\Android\Sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = C:\Users\Daniel ROLDAN\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[!] Visual Studio - develop for Windows (Visual Studio Build Tools 2017 15.9.42)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools
    • Visual Studio Build Tools 2017 version 15.9.28307.1759
    • Windows 10 SDK version 10.0.17763.0
    X Visual Studio 2019 or later is required.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components

[√] Android Studio (version 2020.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[√] VS Code (version 1.63.2)
    • VS Code at C:\Users\Daniel ROLDAN\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.32.0

[√] Connected device (4 available)
    • SM T813 (mobile)  • 3b8bea59055e2627 • android-arm64  • Android 7.0 (API 24)
    • Windows (desktop) • windows          • windows-x64    • Microsoft Windows [version 10.0.19044.1466]
    • Chrome (web)      • chrome           • web-javascript • Google Chrome 93.0.4577.63
    • Edge (web)        • edge             • web-javascript • Microsoft Edge 96.0.1054.62

[√] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

@kauzige
Thanks for the details. Can you also try a scenario wherein you input a text in TextFormField, enable debugger and try to delete one char at a time and see if you get the same _CastError or not ?
Also try the same on an Android device and see what you get.
The error you are getting [performPrivateCommand : onAppPrivateCommand](https://github.com/flutter/flutter/issues/97634#) indicates This is used to receive a private command from the input method.

@darshankawar
I don't seem to have any error when deleting one character at a time with the debugger, I just get that error when I press the special characters button. I have an android phone and I don't have any problem, I can enter the special characters and I don't get that error.
What I understood with your answer is that the special characters button on the keyboard is a private method, isn't it? Do you know if there is a way to read that button in the code? Or what else could I do ?
On the other hand, in the TextInput widget, there is a switch that tells me the following :

And this is where null data arrives, but I really don't understand why this happens on my tablet and not on my mobile phone.

Thanks for further details.
From what I know, performPrivateCommand is used to receive a private command from the input method and is called when the result of TextInputClient.performPrivateCommand is received, but I am not sure if triggering special characters button is the only factor to it or not.
I am unable to verify this behavior since I don't have any Android Tablet to replicate, so I am going to label it for further input / investigation from the team.

I have the same issue on a Samsung Galaxy MO3 (2017) (SM MO22G), when a keyboard appears with type TextInputType.number I don't even have to press a key, just focusing the textfield to make the keyboard appear is enough for the error to happen. If its in the default mode its works fine but when I specify the keyboard type the error pops.

Having the Same issue after upgrading to Flutter 3.3 ,Device is Samsung J2 2018 Android 7.1.

The same issue on Samsung S7 (Android 8.0, Flutter 3.3.2). Rolled back to 3.3.1. Seems like it fixed the issue.

I'm currently having the same issue on my Samsung Galaxy A5. I wasn't having this issue but after upgrading to the latest version of flutter, that is when i started getting this issue with the textfield. It crashes my app and it happens when i change my input type to accommodate numbers. I have downgraded to the previous version of 3.3.0 but still keeps on crashing the application.

This error is also frequently reported by Firebase Crashlytics. In 100% of my cases, Samsung devices are affected.
To give some numbers for a priority rating: In the last 7 days there were 60 reports on about 2500 users.
Fatal Exception: io.flutter.plugins.firebase.crashlytics.FlutterError: Null check operator used on a null value. Error thrown Instance of 'ErrorDescription'.
       at EditableTextState.performPrivateCommand(editable_text.dart:2155)
       at TextInput._handleTextInputInvocation(text_input.dart:1821)
       at TextInput._loudlyHandleTextInputInvocation(text_input.dart:1701)
       at MethodChannel._handleAsMethodCall(platform_channel.dart:536)
       at MethodChannel.setMethodCallHandler.<fn>(platform_channel.dart:529)
       at _DefaultBinaryMessenger.setMessageHandler.<fn>(binding.dart:387)

This bug should be fixed 3 months ago in this https://github.com/flutter/flutter/pull/107683, I don't know why it's still not released.

Is this issue fixed in version 3.3.3 or not?

I think it's fixed in 3.3.3, the onAppPrivateCommand is invoked conditionally

I think it's fixed in 3.3.3, the onAppPrivateCommand is invoked conditionally

No, that's not in 3.3.3.

Our app has 500,000 users, and we received 690 crash reports last night. Also using flutter 3.3.3. Same error on EVERY single crash report, and every device was Samsung:
#0 EditableTextState.performPrivateCommand (package:flutter/src/widgets/editable_text.dart:2155)
#1 TextInput._handleTextInputInvocation (package:flutter/src/services/text_input.dart:1821)
#2 TextInput._loudlyHandleTextInputInvocation (package:flutter/src/services/text_input.dart:1701)
#3 MethodChannel._handleAsMethodCall (package:flutter/src/services/platform_channel.dart:536)
#4 MethodChannel.setMethodCallHandler.<anonymous closure> (package:flutter/src/services/platform_channel.dart:529)
#5 _DefaultBinaryMessenger.setMessageHandler.<anonymous closure> (package:flutter/src/services/binding.dart:387)
#6 _invoke2 (dart:ui/hooks.dart:186)
#7 _ChannelCallbackRecord.invoke (dart:ui/channel_buffers.dart:42)
#8 _Channel.push (dart:ui/channel_buffers.dart:132)
#9 ChannelBuffers.push (dart:ui/channel_buffers.dart:329)
#10 PlatformDispatcher._dispatchPlatformMessage (dart:ui/platform_dispatcher.dart:599)
#11 _dispatchPlatformMessage (dart:ui/hooks.dart:89)

This issue needs to please be URGENTLY FIXED. The exact lines of code causing the crash are clearly shown in the error log, surely it isn't that hard to fix? We cannot afford to have hundreds of crashes every day due to flutter bugs.

https://github.com/flutter/flutter/blob/db51e5d944413df72f06110d1c7a420133ea83fd/packages/flutter/lib/src/widgets/editable_text.dart#L2311
with editing your local flutter codebase, it shall be a workaround for fixing this issue.

Can this please be fixed in the nearest hotfix release?

Any updates here?

Same issue here, any fixes?

Thanks for confirmation. Everyone else in this thread including OP @kauzige, please verify on latest stable version (3.3.7) and confirm, accordingly, I'll update the status of this issue. Thanks.

We can also confirm that we've seen no further reports of this issue since updating to 3.3.7 👍

Also can confirm this is fixed in 3.3.7, thanks.

Thanks for the update. Based on above recent confirmations, I am going ahead and closing this as fixed.
If anybody disagrees, write in comments and I'll reopen it.


[BUG]

Description

When running the example notebooks provided by the recommenders library, specifically when executing the following import statement:
from recommenders.datasets import movielens

I encounter an AttributeError stating that the module pandera has no attribute SchemaModel. This error prevents the notebook from running further and seems to be related to the movielens.py module within the recommenders.datasets package.
The full error message and traceback are provided in the Other Comments section below.
In which platform does it happen?

Platform:  Databricks
Runtime Versions Tried:

Databricks Runtime 11.3 LTS (includes Apache Spark 3.3.0, Scala 2.12)
Databricks Runtime 12.2 LTS (includes Apache Spark 3.3.2, Scala 2.12)
Databricks Runtime 13.1 (includes Apache Spark 3.4.1, Scala 2.12)
Databricks Runtime 14.1 (includes Apache Spark 3.5.0, Scala 2.12)

Despite trying multiple runtimes, the issue persists across all of them.
How do we replicate the issue?

Set Up  Databricks Environment:

Launch an Databricks workspace.
Create a new cluster using any of the runtimes mentioned above.

Install Required Libraries:

Install the recommenders library on the cluster:pip install recommenders

Create a New Notebook:

In the workspace, create a new Python notebook attached to the cluster.

Run the Following Code in a Notebook Cell:
from recommenders.datasets import movielens

Observe the Error:

The AttributeError should occur, indicating that pandera has no attribute SchemaModel.

Expected behavior (i.e. solution)

The import statement from recommenders.datasets import movielens should execute without any errors.
The movielens dataset module should be available for use in the notebook.
All example notebooks using the recommenders library should run successfully on Azure Databricks.

Willingness to contribute

[x] Yes, I can contribute for this issue independently.
[x] Yes, I can contribute for this issue with guidance from Recommenders community.
[ ] No, I cannot contribute at this time.

Other Comments
Full Error Message and Traceback:
AttributeError: module 'pandera' has no attribute 'SchemaModel'
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-1-abc123456789> in <module>
      1 # Other imports (if any)
----> 2 from recommenders.datasets import movielens
      3 # Rest of the code (if any)

~/databricks/python/lib/python3.10/site-packages/recommenders/datasets/movielens.py in <module>
    582     return not df[columns].duplicated().any()
    583
--> 584 class MockMovielensSchema(pa.SchemaModel):
    585     """
    586     Mock dataset schema to generate fake data for testing purpose.

AttributeError: module 'pandera' has no attribute 'SchemaModel'

Additional Information:

I have verified that pandera is installed and up-to-date in the environment:import pandera
print(pandera.__version__)

Attempted solutions:

Upgrading pandera to the latest version did not resolve the issue.
Uninstalling and reinstalling pandera did not resolve the issue.
Downgrading pandera to earlier versions leads to other compatibility issues.

It appears that the recommenders library may not be compatible with the latest versions of pandera, or there may be an issue with how SchemaModel is imported or used in movielens.py.

Environment Details:

Python Version: 3.10.x (as per the Databricks runtime)
recommenders Library Version: Latest available via pip as of the date of this report.

Request:

Guidance on resolving this import error.
Confirmation on whether this is a known issue or a bug that needs fixing.

I found the same issue after following the installation instructions.
Has anyone found a solution?

@LoMarrujo make sure you install with the below versions to work with recommenders
a. numpy<2.0.0
b. pandera<=0.18.3
c. scipy<=1.13.1

closing this issue because it seems fixed


Delete a project contains tag hang at pending

Version v1.5.0-cf79e9ee
Delete a project which contains a tag, UI will hang at pending

message: "Uncaught (in promise): TypeError: DV.forkJoin is not a function\n

@sigsbee do you mean contains an image?

Yes, contains at least one image, not an empty project

may be the same problem with #4904


Update reference instructions for calling Windows APIs

The old instructions referenced the Win8.x era interop assemblies (netcore v4.5) that had a dependencies on the facade windows.winmd.  This is not necessary, you can reference the .NetFramework 4.x interop assemblies and the contracts.

@normesta : The PR passes checklist review. Please review and approve/merge as appropriate. Thanks!

Thanks for your contribution!


Mgr Timeout while deploying with ansible-playbook

Bug Report
What happened:
I am trying this for the first time. So I think there maybe some configuration error from my part. But currently I cant find any.
TASK [ceph-mgr : wait for all mgr to be up] **********************************************************************************************************************************************************
Friday 24 April 2020  17:41:38 +0530 (0:00:00.037)       0:06:02.798 **********
FAILED - RETRYING: wait for all mgr to be up (30 retries left).
FAILED - RETRYING: wait for all mgr to be up (29 retries left).
FAILED - RETRYING: wait for all mgr to be up (28 retries left).
FAILED - RETRYING: wait for all mgr to be up (27 retries left).
FAILED - RETRYING: wait for all mgr to be up (26 retries left).
FAILED - RETRYING: wait for all mgr to be up (25 retries left).
FAILED - RETRYING: wait for all mgr to be up (24 retries left).
FAILED - RETRYING: wait for all mgr to be up (23 retries left).
FAILED - RETRYING: wait for all mgr to be up (22 retries left).
FAILED - RETRYING: wait for all mgr to be up (21 retries left).
FAILED - RETRYING: wait for all mgr to be up (20 retries left).
FAILED - RETRYING: wait for all mgr to be up (19 retries left).
FAILED - RETRYING: wait for all mgr to be up (18 retries left).
FAILED - RETRYING: wait for all mgr to be up (17 retries left).
FAILED - RETRYING: wait for all mgr to be up (16 retries left).
FAILED - RETRYING: wait for all mgr to be up (15 retries left).
FAILED - RETRYING: wait for all mgr to be up (14 retries left).
FAILED - RETRYING: wait for all mgr to be up (13 retries left).
FAILED - RETRYING: wait for all mgr to be up (12 retries left).
FAILED - RETRYING: wait for all mgr to be up (11 retries left).
FAILED - RETRYING: wait for all mgr to be up (10 retries left).
FAILED - RETRYING: wait for all mgr to be up (9 retries left).
FAILED - RETRYING: wait for all mgr to be up (8 retries left).
FAILED - RETRYING: wait for all mgr to be up (7 retries left).
FAILED - RETRYING: wait for all mgr to be up (6 retries left).
FAILED - RETRYING: wait for all mgr to be up (5 retries left).
FAILED - RETRYING: wait for all mgr to be up (4 retries left).
FAILED - RETRYING: wait for all mgr to be up (3 retries left).
FAILED - RETRYING: wait for all mgr to be up (2 retries left).
FAILED - RETRYING: wait for all mgr to be up (1 retries left).
fatal<EMAIL_ADDRESS>-><EMAIL_ADDRESS>FAILED! => changed=false
  attempts: 30
  cmd:
  - ceph
  - --cluster
  - ceph
  - mgr
  - dump
  - -f
  - json
  delta: '0:00:00.229637'
  end: '2020-04-24 17:45:18.220025'
  rc: 0
  start: '2020-04-24 17:45:17.990388'
  stderr: ''
  stderr_lines: <omitted>
  stdout: |2-

    {"epoch":1,"active_gid":0,"active_name":"","active_addrs":{"addrvec":[]},"active_addr":":/0","active_change":"0.000000","available":false,"standbys":[],"modules":["iostat","restful"],"available_modules":[],"services":{},"always_on_modules":{"nautilus":["balancer","crash","devicehealth","orchestrator_cli","progress","rbd_support","status","volumes"]}}
  stdout_lines: <omitted>

NO MORE HOSTS LEFT ***********************************************************************************************************************************************************************************

PLAY RECAP *******************************************************************************************************************************************************************************************
<EMAIL_ADDRESS>        : ok=178  changed=14   unreachable=0    failed=1    skipped=289  rescued=0    ignored=0
<EMAIL_ADDRESS>        : ok=96   changed=7    unreachable=0    failed=0    skipped=212  rescued=0    ignored=0
<EMAIL_ADDRESS>        : ok=96   changed=7    unreachable=0    failed=0    skipped=212  rescued=0    ignored=0

INSTALLER STATUS *************************************************************************************************************************************************************************************
Install Ceph Monitor           : Complete (0:02:25)
Install Ceph Manager           : In Progress (0:04:40)
	This phase can be restarted by running: roles/ceph-mgr/tasks/main.yml

What you expected to happen:
This process to go smoothly
How to reproduce it (minimal and precise):

Share your group_vars files, inventory and full ceph-ansibe log
Environment:

OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Docker version if applicable (e.g. docker version):
Ansible version (e.g. ansible-playbook --version):
ceph-ansible version (e.g. git head or tag or stable branch):
Ceph version (e.g. ceph -v):

Please share your group_vars files, inventory and full ceph-ansibe log

group_vars/all.yaml
---
# Variables here are applicable to all host groups NOT roles

# This sample file generated by generate_group_vars_sample.sh

# Dummy variable to avoid error because ansible does not recognize the
# file as a good configuration file when no variable in it.
dummy:

# You can override vars by using host or group vars

###########
# GENERAL #
###########

######################################
# Releases name to number dictionary #
######################################
#ceph_release_num:
#  dumpling: 0.67
#  emperor: 0.72
#  firefly: 0.80
#  giant: 0.87
#  hammer: 0.94
#  infernalis: 9
#  jewel: 10
#  kraken: 11
#  luminous: 12
#  mimic: 13
#  nautilus: 14
#  octopus: 15
#  pacific: 16
#  dev: 99

# Directory to fetch cluster fsid, keys etc...
#fetch_directory: fetch/

# The 'cluster' variable determines the name of the cluster.
# Changing the default value to something else means that you will
# need to change all the command line calls as well, for example if
# your cluster name is 'foo':
# "ceph health" will become "ceph --cluster foo health"
#
# An easier way to handle this is to use the environment variable CEPH_ARGS
# So run: "export CEPH_ARGS="--cluster foo"
# With that you will be able to run "ceph health" normally
#cluster: ceph

# Inventory host group variables
#mon_group_name: mons
#osd_group_name: osds
#rgw_group_name: rgws
#mds_group_name: mdss
#nfs_group_name: nfss
#rbdmirror_group_name: rbdmirrors
#client_group_name: clients
#iscsi_gw_group_name: iscsigws
#mgr_group_name: mgrs
#rgwloadbalancer_group_name: rgwloadbalancers
#grafana_server_group_name: grafana-server

# If configure_firewall is true, then ansible will try to configure the
# appropriate firewalling rules so that Ceph daemons can communicate
# with each others.
#configure_firewall: True

# Open ports on corresponding nodes if firewall is installed on it
#ceph_mon_firewall_zone: public
#ceph_mgr_firewall_zone: public
#ceph_osd_firewall_zone: public
#ceph_rgw_firewall_zone: public
#ceph_mds_firewall_zone: public
#ceph_nfs_firewall_zone: public
#ceph_rbdmirror_firewall_zone: public
#ceph_iscsi_firewall_zone: public
#ceph_dashboard_firewall_zone: public
#ceph_rgwloadbalancer_firewall_zone: public

# Generate local ceph.conf in fetch directory
#ceph_conf_local: false

############
# PACKAGES #
############
#debian_package_dependencies: []

#centos_package_dependencies:
#  - epel-release
#  - "{{ 'python3-libselinux' if ansible_distribution_major_version | int >= 8 else 'libselinux-python' }}"

#redhat_package_dependencies: []

#suse_package_dependencies: []

# Whether or not to install the ceph-test package.
#ceph_test: false

# Enable the ntp service by default to avoid clock skew on ceph nodes
# Disable if an appropriate NTP client is already installed and configured
#ntp_service_enabled: true

# Set type of NTP client daemon to use, valid entries are chronyd, ntpd or timesyncd
#ntp_daemon_type: chronyd

# This variable determines if ceph packages can be updated.  If False, the
# package resources will use "state=present".  If True, they will use
# "state=latest".
#upgrade_ceph_packages: False

#ceph_use_distro_backports: false # DEBIAN ONLY
#ceph_directories_mode: "0755"

###########
# INSTALL #
###########
#ceph_repository_type: dummy

# ORIGIN SOURCE
#
# Choose between:
# - 'repository' means that you will get ceph installed through a new repository. Later below choose between 'community', 'rhcs', 'dev' or 'obs'
# - 'distro' means that no separate repo file will be added
#  you will get whatever version of Ceph is included in your Linux distro.
# 'local' means that the ceph binaries will be copied over from the local machine
ceph_origin: repository
#valid_ceph_origins:
#  - repository
#  - distro
#  - local

ceph_repository: community
#valid_ceph_repository:
#  - community
#  - rhcs
#  - dev
#  - uca
#  - custom
#  - obs

# REPOSITORY: COMMUNITY VERSION
#
# Enabled when ceph_repository == 'community'
#
#ceph_mirror: http://download.ceph.com
#ceph_stable_key: https://download.ceph.com/keys/release.asc
ceph_stable_release: octopus
#ceph_stable_repo: "{{ ceph_mirror }}/debian-{{ ceph_stable_release }}"

#nfs_ganesha_stable: true # use stable repos for nfs-ganesha
#nfs_ganesha_stable_branch: V3.2-stable
#nfs_ganesha_stable_deb_repo: "{{ ceph_mirror }}/nfs-ganesha/deb-{{ nfs_ganesha_stable_branch }}/{{ ceph_stable_release }}"

# Use the option below to specify your applicable package tree, eg. when using non-LTS Ubuntu versions
# # for a list of available Debian distributions, visit http://download.ceph.com/debian-{{ ceph_stable_release }}/dists/
# for more info read: https://github.com/ceph/ceph-ansible/issues/305
#ceph_stable_distro_source: "{{ ansible_distribution_release }}"

# REPOSITORY: RHCS VERSION RED HAT STORAGE (from 5.0)
#
# Enabled when ceph_repository == 'rhcs'
#
# This version is supported on RHEL 8
#
#ceph_rhcs_version: "{{ ceph_stable_rh_storage_version | default(5) }}"
#valid_ceph_repository_type:
#  - cdn
#  - iso
#ceph_rhcs_iso_path: "{{ ceph_stable_rh_storage_iso_path | default('') }}"
#ceph_rhcs_mount_path: "{{ ceph_stable_rh_storage_mount_path | default('/tmp/rh-storage-mount') }}"
#ceph_rhcs_repository_path: "{{ ceph_stable_rh_storage_repository_path | default('/tmp/rh-storage-repo') }}" # where to copy iso's content

# REPOSITORY: UBUNTU CLOUD ARCHIVE
#
# Enabled when ceph_repository == 'uca'
#
# This allows the install of Ceph from the Ubuntu Cloud Archive.  The Ubuntu Cloud Archive
# usually has newer Ceph releases than the normal distro repository.
#
#
#ceph_stable_repo_uca: "http://ubuntu-cloud.archive.canonical.com/ubuntu"
#ceph_stable_openstack_release_uca: queens
#ceph_stable_release_uca: "{{ ansible_distribution_release }}-updates/{{ ceph_stable_openstack_release_uca }}"

# REPOSITORY: openSUSE OBS
#
# Enabled when ceph_repository == 'obs'
#
# This allows the install of Ceph from the openSUSE OBS repository. The OBS repository
# usually has newer Ceph releases than the normal distro repository.
#
#
#ceph_obs_repo: "https://download.opensuse.org/repositories/filesystems:/ceph:/{{ ceph_stable_release }}/openSUSE_Leap_{{ ansible_distribution_version }}/"

# REPOSITORY: DEV
#
# Enabled when ceph_repository == 'dev'
#
#ceph_dev_branch: master # development branch you would like to use e.g: master, wip-hack
#ceph_dev_sha1: latest # distinct sha1 to use, defaults to 'latest' (as in latest built)

#nfs_ganesha_dev: false # use development repos for nfs-ganesha

# Set this to choose the version of ceph dev libraries used in the nfs-ganesha packages from shaman
# flavors so far include: ceph_master, ceph_jewel, ceph_kraken, ceph_luminous
#nfs_ganesha_flavor: "ceph_master"

#ceph_iscsi_config_dev: true # special repo for deploying iSCSI gateways

# REPOSITORY: CUSTOM
#
# Enabled when ceph_repository == 'custom'
#
# Use a custom repository to install ceph.  For RPM, ceph_custom_repo should be
# a URL to the .repo file to be installed on the targets.  For deb,
# ceph_custom_repo should be the URL to the repo base.
#
#ceph_custom_key: https://server.domain.com/ceph-custom-repo-key.asc
#ceph_custom_repo: https://server.domain.com/ceph-custom-repo

# ORIGIN: LOCAL CEPH INSTALLATION
#
# Enabled when ceph_repository == 'local'
#
# Path to DESTDIR of the ceph install
#ceph_installation_dir: "/path/to/ceph_installation/"
# Whether or not to use installer script rundep_installer.sh
# This script takes in rundep and installs the packages line by line onto the machine
# If this is set to false then it is assumed that the machine ceph is being copied onto will already have
# all runtime dependencies installed
#use_installer: false
# Root directory for ceph-ansible
#ansible_dir: "/path/to/ceph-ansible"

######################
# CEPH CONFIGURATION #
######################

## Ceph options
#
# Each cluster requires a unique, consistent filesystem ID. By
# default, the playbook generates one for you and stores it in a file
# in `fetch_directory`. If you want to customize how the fsid is
# generated, you may find it useful to disable fsid generation to
# avoid cluttering up your ansible repo. If you set `generate_fsid` to
# false, you *must* generate `fsid` in another way.
# ACTIVATE THE FSID VARIABLE FOR NON-VAGRANT DEPLOYMENT
#fsid: "{{ cluster_uuid.stdout }}"
#generate_fsid: true

#ceph_conf_key_directory: /etc/ceph

#ceph_uid: 167

# Permissions for keyring files in /etc/ceph
#ceph_keyring_permissions: '0600'

#cephx: true

## Client options
#
#rbd_cache: "true"
#rbd_cache_writethrough_until_flush: "true"
#rbd_concurrent_management_ops: 20

#rbd_client_directories: true # this will create rbd_client_log_path and rbd_client_admin_socket_path directories with proper permissions

# Permissions for the rbd_client_log_path and
# rbd_client_admin_socket_path. Depending on your use case for Ceph
# you may want to change these values. The default, which is used if
# any of the variables are unset or set to a false value (like `null`
# or `false`) is to automatically determine what is appropriate for
# the Ceph version with non-OpenStack workloads -- ceph:ceph and 0770
# for infernalis releases, and root:root and 1777 for pre-infernalis
# releases.
#
# For other use cases, including running Ceph with OpenStack, you'll
# want to set these differently:
#
# For OpenStack on RHEL, you'll want:
#   rbd_client_directory_owner: "qemu"
#   rbd_client_directory_group: "libvirtd" (or "libvirt", depending on your version of libvirt)
#   rbd_client_directory_mode: "0755"
#
# For OpenStack on Ubuntu or Debian, set:
#    rbd_client_directory_owner: "libvirt-qemu"
#    rbd_client_directory_group: "kvm"
#    rbd_client_directory_mode: "0755"
#
# If you set rbd_client_directory_mode, you must use a string (e.g.,
# 'rbd_client_directory_mode: "0755"', *not*
# 'rbd_client_directory_mode: 0755', or Ansible will complain: mode
# must be in octal or symbolic form
#rbd_client_directory_owner: ceph
#rbd_client_directory_group: ceph
#rbd_client_directory_mode: "0770"

#rbd_client_log_path: /var/log/ceph
#rbd_client_log_file: "{{ rbd_client_log_path }}/qemu-guest-$pid.log" # must be writable by QEMU and allowed by SELinux or AppArmor
#rbd_client_admin_socket_path: /var/run/ceph # must be writable by QEMU and allowed by SELinux or AppArmor

## Monitor options
#
# You must define either monitor_interface, monitor_address or monitor_address_block.
# These variables must be defined at least in all.yml and overrided if needed (inventory host file or group_vars/*.yml).
# Eg. If you want to specify for each monitor which address the monitor will bind to you can set it in your **inventory host file** by using 'monitor_address' variable.
# Preference will go to monitor_address if both monitor_address and monitor_interface are defined.
monitor_interface: ens3
#monitor_address: <IP_ADDRESS>/24
#monitor_address_block: subnet
# set to either ipv4 or ipv6, whichever your network is using
#ip_version: ipv4

#mon_host_v1:
#  enabled: True
#  suffix: ':6789'
#mon_host_v2:
#  suffix: ':3300'

##########
# CEPHFS #
##########
# When pg_autoscale_mode is set to True, you must add the target_size_ratio key with a correct value
# `pg_num` and `pgp_num` keys will be ignored, even if specified.
# eg:
#  cephfs_data_pool:
#    name: "{{ cephfs_data if cephfs_data is defined else 'cephfs_data' }}"
#    pg_num: "{{ osd_pool_default_pg_num }}"
#    pgp_num: "{{ osd_pool_default_pg_num }}"
#    rule_name: "replicated_rule"
#    type: 1
#    erasure_profile: ""
#    expected_num_objects: ""
#    size: "{{ osd_pool_default_size }}"
#    min_size: "{{ osd_pool_default_min_size }}"
#    pg_autoscale_mode: False
#    target_size_ratio: 0.2
#cephfs: cephfs # name of the ceph filesystem
#cephfs_data_pool:
#  name: "{{ cephfs_data if cephfs_data is defined else 'cephfs_data' }}"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#cephfs_metadata_pool:
#  name: "{{ cephfs_metadata if cephfs_metadata is defined else 'cephfs_metadata' }}"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#cephfs_pools:
#  - "{{ cephfs_data_pool }}"
#  - "{{ cephfs_metadata_pool }}"

## OSD options
#
#is_hci: false
#hci_safety_factor: 0.2
#non_hci_safety_factor: 0.7
#osd_memory_target:<PHONE_NUMBER>
journal_size: 5120 # OSD journal size in MB
#block_db_size: -1 # block db size in bytes for the ceph-volume lvm batch. -1 means use the default of 'as big as possible'.
public_network: <IP_ADDRESS>/24
#cluster_network: "{{ public_network | regex_replace(' ', '') }}"
#osd_mkfs_type: xfs
#osd_mkfs_options_xfs: -f -i size=2048
#osd_mount_options_xfs: noatime,largeio,inode64,swalloc
#osd_objectstore: bluestore

# Any device containing these patterns in their path will be excluded.
#osd_auto_discovery_exclude: "dm-*|loop*|md*|rbd*"

# xattrs. by default, 'filestore xattr use omap' is set to 'true' if
# 'osd_mkfs_type' is set to 'ext4'; otherwise it isn't set. This can
# be set to 'true' or 'false' to explicitly override those
# defaults. Leave it 'null' to use the default for your chosen mkfs
# type.
#filestore_xattr_use_omap: null

## MDS options
#
#mds_max_mds: 1

## Rados Gateway options
#
#radosgw_frontend_type: beast # For additionnal frontends see: http://docs.ceph.com/docs/nautilus/radosgw/frontends/

radosgw_civetweb_port: 8080
#radosgw_civetweb_num_threads: 512
#radosgw_civetweb_options: "num_threads={{ radosgw_civetweb_num_threads }}"
# For additional civetweb configuration options available such as logging,
# keepalive, and timeout settings, please see the civetweb docs at
# https://github.com/civetweb/civetweb/blob/master/docs/UserManual.md

#radosgw_frontend_port: "{{ radosgw_civetweb_port if radosgw_frontend_type == 'civetweb' else '8080' }}"
# The server private key, public certificate and any other CA or intermediate certificates should be in one file, in PEM format.
#radosgw_frontend_ssl_certificate: ""
#radosgw_frontend_ssl_certificate_data: "" # certificate contents to be written to path defined by radosgw_frontend_ssl_certificate
#radosgw_frontend_options: "{{ radosgw_civetweb_options if radosgw_frontend_type == 'civetweb' else '' }}"
#radosgw_thread_pool_size: 512

# You must define either radosgw_interface, radosgw_address.
# These variables must be defined at least in all.yml and overrided if needed (inventory host file or group_vars/*.yml).
# Eg. If you want to specify for each radosgw node which address the radosgw will bind to you can set it in your **inventory host file** by using 'radosgw_address' variable.
# Preference will go to radosgw_address if both radosgw_address and radosgw_interface are defined.
#radosgw_interface: interface
#radosgw_address: x.x.x.x
#radosgw_address_block: subnet
#radosgw_keystone_ssl: false # activate this when using keystone PKI keys
#radosgw_num_instances: 1
# Rados Gateway options
#email_address<EMAIL_ADDRESS>

## Testing mode
# enable this mode _only_ when you have a single node
# if you don't want it keep the option commented
#common_single_host_mode: true

## Handlers - restarting daemons after a config change
# if for whatever reasons the content of your ceph configuration changes
# ceph daemons will be restarted as well. At the moment, we can not detect
# which config option changed so all the daemons will be restarted. Although
# this restart will be serialized for each node, in between a health check
# will be performed so we make sure we don't move to the next node until
# ceph is not healthy
# Obviously between the checks (for monitors to be in quorum and for osd's pgs
# to be clean) we have to wait. These retries and delays can be configurable
# for both monitors and osds.
#
# Monitor handler checks
#handler_health_mon_check_retries: 10
#handler_health_mon_check_delay: 20
#
# OSD handler checks
#handler_health_osd_check_retries: 40
#handler_health_osd_check_delay: 30
#handler_health_osd_check: true
#
# MDS handler checks
#handler_health_mds_check_retries: 5
#handler_health_mds_check_delay: 10
#
# RGW handler checks
#handler_health_rgw_check_retries: 5
#handler_health_rgw_check_delay: 10

# NFS handler checks
#handler_health_nfs_check_retries: 5
#handler_health_nfs_check_delay: 10

# RBD MIRROR handler checks
#handler_health_rbd_mirror_check_retries: 5
#handler_health_rbd_mirror_check_delay: 10

# MGR handler checks
#handler_health_mgr_check_retries: 5
#handler_health_mgr_check_delay: 10

## health mon/osds check retries/delay:

#health_mon_check_retries: 20
#health_mon_check_delay: 10
#health_osd_check_retries: 20
#health_osd_check_delay: 10

###############
# NFS-GANESHA #
###############

# Confiure the type of NFS gatway access.  At least one must be enabled for an
# NFS role to be useful
#
# Set this to true to enable File access via NFS.  Requires an MDS role.
#nfs_file_gw: false
# Set this to true to enable Object access via NFS. Requires an RGW role.
#nfs_obj_gw: "{{ False if groups.get(mon_group_name, []) | length == 0 else True }}"

#############
# MULTISITE #
#############

# Changing this value allows multisite code to run
#rgw_multisite: false

# If the desired multisite configuration involves only one realm, one zone group and one zone (per cluster), then the multisite variables can be set here.
# Please see README-MULTISITE.md for more information.
#
# If multiple realms or multiple zonegroups or multiple zones need to be created on a cluster then,
# the multisite config variables should be editted in their respective zone .yaml file and realm .yaml file.
# See README-MULTISITE-MULTIREALM.md for more information.

# The following Multi-site related variables should be set by the user.
#
# rgw_zone is set to "default" to enable compression for clusters configured without rgw multi-site
# If multisite is configured, rgw_zone should not be set to "default".
#
#rgw_zone: default

#rgw_zonemaster: true
#rgw_zonesecondary: false
#rgw_zonegroup: solarsystem # should be set by the user
#rgw_zonegroupmaster: true
#rgw_zone_user: zone.user
#rgw_zone_user_display_name: "Zone User"
#rgw_realm: milkyway # should be set by the user
#rgw_multisite_proto: "http"
#system_access_key: 6kWkikvapSnHyE22P7nO # should be re-created by the user
#system_secret_key: MGecsMrWtKZgngOHZdrd6d3JxGO5CPWgT2lcnpSt # should be re-created by the user

# Multi-site remote pull URL variables
#rgw_pull_port: "{{ radosgw_frontend_port }}"
#rgw_pull_proto: "http" # should be the same as rgw_multisite_proto for the master zone cluster
#rgw_pullhost: localhost # rgw_pullhost only needs to be declared if there is a zone secondary.

###################
# CONFIG OVERRIDE #
###################

# Ceph configuration file override.
# This allows you to specify more configuration options
# using an INI style format.
#
# When configuring RGWs, make sure you use the form [client.rgw.*]
# instead of [client.radosgw.*].
# For more examples check the profiles directory of https://github.com/ceph/ceph-ansible.
#
# The following sections are supported: [global], [mon], [osd], [mds], [client]
#
# Example:
# ceph_conf_overrides:
#   global:
#     foo: 1234
#     bar: 5678
#   "client.rgw.{{ hostvars[groups.get(rgw_group_name)[0]]['ansible_hostname'] }}":
#     rgw_zone: zone1
#
#ceph_conf_overrides: {}

#############
# OS TUNING #
#############

#disable_transparent_hugepage: "{{ false if osd_objectstore == 'bluestore' else true }}"
#os_tuning_params:
#  - { name: fs.file-max, value: 26234859 }
#  - { name: vm.zone_reclaim_mode, value: 0 }
#  - { name: vm.swappiness, value: 10 }
#  - { name: vm.min_free_kbytes, value: "{{ vm_min_free_kbytes }}" }

# For Debian & Red Hat/CentOS installs set TCMALLOC_MAX_TOTAL_THREAD_CACHE_BYTES
# Set this to a byte value (e.g. 134217728)
# A value of 0 will leave the package default.
#ceph_tcmalloc_max_total_thread_cache: 0

##########
# DOCKER #
##########
#ceph_docker_image: "ceph/daemon"
#ceph_docker_image_tag: latest
#ceph_docker_registry: docker.io
#ceph_docker_registry_auth: false
#ceph_docker_registry_username:
#ceph_docker_registry_password:
## Client only docker image - defaults to {{ ceph_docker_image }}
#ceph_client_docker_image: "{{ ceph_docker_image }}"
#ceph_client_docker_image_tag: "{{ ceph_docker_image_tag }}"
#ceph_client_docker_registry: "{{ ceph_docker_registry }}"
#ceph_docker_enable_centos_extra_repo: false
#ceph_docker_on_openstack: false
#containerized_deployment: False
#container_binary:
#timeout_command: "{{ 'timeout --foreground -s KILL ' ~ docker_pull_timeout if (docker_pull_timeout != '0') and (ceph_docker_dev_image is undefined or not ceph_docker_dev_image) else '' }}"

# this is only here for usage with the rolling_update.yml playbook
# do not ever change this here
#rolling_update: false

#####################
# Docker pull retry #
#####################
#docker_pull_retry: 3
#docker_pull_timeout: "300s"

#############
# OPENSTACK #
#############
#openstack_config: false
# When pg_autoscale_mode is set to True, you must add the target_size_ratio key with a correct value
# `pg_num` and `pgp_num` keys will be ignored, even if specified.
# eg:
#  openstack_glance_pool:
#    name: "images"
#    pg_num: "{{ osd_pool_default_pg_num }}"
#    pgp_num: "{{ osd_pool_default_pg_num }}"
#    rule_name: "replicated_rule"
#    type: 1
#    erasure_profile: ""
#    expected_num_objects: ""
#    application: "rbd"
#    size: "{{ osd_pool_default_size }}"
#    min_size: "{{ osd_pool_default_min_size }}"
#    pg_autoscale_mode: False
#    target_size_ratio: 0.2
#openstack_glance_pool:
#  name: "images"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  application: "rbd"
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#openstack_cinder_pool:
#  name: "volumes"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  application: "rbd"
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#openstack_nova_pool:
#  name: "vms"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  application: "rbd"
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#openstack_cinder_backup_pool:
#  name: "backups"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  application: "rbd"
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#openstack_gnocchi_pool:
#  name: "metrics"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  application: "rbd"
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#openstack_cephfs_data_pool:
#  name: "manila_data"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  application: "cephfs"
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#openstack_cephfs_metadata_pool:
#  name: "manila_metadata"
#  pg_num: "{{ osd_pool_default_pg_num }}"
#  pgp_num: "{{ osd_pool_default_pg_num }}"
#  rule_name: "replicated_rule"
#  type: 1
#  erasure_profile: ""
#  expected_num_objects: ""
#  application: "cephfs"
#  size: "{{ osd_pool_default_size }}"
#  min_size: "{{ osd_pool_default_min_size }}"
#  pg_autoscale_mode: False
#openstack_pools:
#  - "{{ openstack_glance_pool }}"
#  - "{{ openstack_cinder_pool }}"
#  - "{{ openstack_nova_pool }}"
#  - "{{ openstack_cinder_backup_pool }}"
#  - "{{ openstack_gnocchi_pool }}"
#  - "{{ openstack_cephfs_data_pool }}"
#  - "{{ openstack_cephfs_metadata_pool }}"

# The value for 'key' can be a pre-generated key,
# e.g key: "AQDC2UxZH4yeLhAAgTaZb+4wDUlYOsr1OfZSpQ=="
# By default, keys will be auto-generated.
#
#openstack_keys:
#  - { name: client.glance, caps: { mon: "profile rbd", osd: "profile rbd pool={{ openstack_cinder_pool.name }}, profile rbd pool={{ openstack_glance_pool.name }}"}, mode: "0600" }
#  - { name: client.cinder, caps: { mon: "profile rbd", osd: "profile rbd pool={{ openstack_cinder_pool.name }}, profile rbd pool={{ openstack_nova_pool.name }}, profile rbd pool={{ openstack_glance_pool.name }}"}, mode: "0600" }
#  - { name: client.cinder-backup, caps: { mon: "profile rbd", osd: "profile rbd pool={{ openstack_cinder_backup_pool.name }}"}, mode: "0600" }
#  - { name: client.gnocchi, caps: { mon: "profile rbd", osd: "profile rbd pool={{ openstack_gnocchi_pool.name }}"}, mode: "0600", }
#  - { name: client.openstack, caps: { mon: "profile rbd", osd: "profile rbd pool={{ openstack_glance_pool.name }}, profile rbd pool={{ openstack_nova_pool.name }}, profile rbd pool={{ openstack_cinder_pool.name }}, profile rbd pool={{ openstack_cinder_backup_pool.name }}"}, mode: "0600" }

#############
# DASHBOARD #
#############
dashboard_enabled: True
# Choose http or https
# For https, you should set dashboard.crt/key and grafana.crt/key
# If you define the dashboard_crt and dashboard_key variables, but leave them as '',
# then we will autogenerate a cert and keyfile
dashboard_protocol: http
dashboard_port: 8443
dashboard_admin_user: admin
#dashboard_admin_user_ro: false
# This variable must be set with a strong custom password when dashboard_enabled is True
dashboard_admin_password: p@ssw0rd
# We only need this for SSL (https) connections
#dashboard_crt: ''
#dashboard_key: ''
#dashboard_rgw_api_user_id: ceph-dashboard
#dashboard_rgw_api_admin_resource: ''
#dashboard_rgw_api_no_ssl_verify: False
#dashboard_frontend_vip: ''
#node_exporter_container_image: "docker.io/prom/node-exporter:v0.17.0"
#node_exporter_port: 9100
grafana_admin_user: admin
# This variable must be set with a strong custom password when dashboard_enabled is True
grafana_admin_password: admin
# We only need this for SSL (https) connections
#grafana_crt: ''
#grafana_key: ''
# When using https, please fill with a hostname for which grafana_crt is valid.
#grafana_server_fqdn: ''
#grafana_container_image: "docker.io/grafana/grafana:5.4.3"
#grafana_container_cpu_period: 100000
#grafana_container_cpu_cores: 2
# container_memory is in GB
#grafana_container_memory: 4
#grafana_uid: 472
#grafana_datasource: Dashboard
#grafana_dashboards_path: "/etc/grafana/dashboards/ceph-dashboard"
#grafana_dashboard_version: master
#grafana_dashboard_files:
#  - ceph-cluster.json
#  - cephfs-overview.json
#  - host-details.json
#  - hosts-overview.json
#  - osd-device-details.json
#  - osds-overview.json
#  - pool-detail.json
#  - pool-overview.json
#  - radosgw-detail.json
#  - radosgw-overview.json
#  - rbd-overview.json
#grafana_plugins:
#  - vonage-status-panel
#  - grafana-piechart-panel
#grafana_allow_embedding: True
#grafana_port: 3000
#prometheus_container_image: "docker.io/prom/prometheus:v2.7.2"
#prometheus_container_cpu_period: 100000
#prometheus_container_cpu_cores: 2
# container_memory is in GB
#prometheus_container_memory: 4
#prometheus_data_dir: /var/lib/prometheus
#prometheus_conf_dir: /etc/prometheus
#prometheus_user_id: '65534'  # This is the UID used by the prom/prometheus container image
#prometheus_port: 9092
#alertmanager_container_image: "docker.io/prom/alertmanager:v0.16.2"
#alertmanager_container_cpu_period: 100000
#alertmanager_container_cpu_cores: 2
# container_memory is in GB
#alertmanager_container_memory: 4
#alertmanager_data_dir: /var/lib/alertmanager
#alertmanager_conf_dir: /etc/alertmanager
#alertmanager_port: 9093
#alertmanager_cluster_port: 9094

##################################
# DEPRECIATED iSCSI TARGET SETUP #
##################################

# WARNING #

# The following values are depreciated. To setup targets, gateways, LUNs, and
# clients you should use gwcli or dashboard. If the following values are set,
# the old ceph-iscsi-config/ceph-iscsi-cli packages will be used.

# Specify the iqn for ALL gateways. This iqn is shared across the gateways, so an iscsi
# client sees the gateway group as a single storage subsystem.
#gateway_iqn: ""

# gateway_ip_list provides a list of the IP Addrresses - one per gateway - that will be used
# as an iscsi target portal ip. The list must be comma separated - and the order determines
# the sequence of TPG's within the iscsi target across each gateway. Once set, additional
# gateways can be added, but the order must *not* be changed.
#gateway_ip_list: <IP_ADDRESS>

# rbd_devices defines the images that should be created and exported from the iscsi gateways.
# If the rbd does not exist, it will be created for you. In addition you may increase the
# size of rbd's by changing the size parameter and rerunning the playbook. A size value lower
# than the current size of the rbd is ignored.
#
# the 'host' parameter defines which of the gateway nodes should handle the physical
# allocation/expansion or removal of the rbd
# to remove an image, simply use a state of 'absent'. This will first check the rbd is not allocated
# to any client, and the remove it from LIO and then delete the rbd image
#
# NB. this variable definition can be commented out to bypass LUN management
#
# Example:
#
#rbd_devices:
#  - { pool: 'rbd', image: 'ansible1', size: '30G', host: 'ceph-1', state: 'present' }
#  - { pool: 'rbd', image: 'ansible2', size: '15G', host: 'ceph-1', state: 'present' }
#  - { pool: 'rbd', image: 'ansible3', size: '30G', host: 'ceph-1', state: 'present' }
#  - { pool: 'rbd', image: 'ansible4', size: '50G', host: 'ceph-1', state: 'present' }
#rbd_devices: {}

# client_connections defines the client ACL's to restrict client access to specific LUNs
# The settings are as follows;
# - image_list is a comma separated list of rbd images of the form <pool name>.<rbd_image_name>
# - chap supplies the user and password the client will use for authentication of the
#   form <user>/<password>
# - status shows the intended state of this client definition - 'present' or 'absent'
#
# NB. this definition can be commented out to skip client (nodeACL) management
#
# Example:
#
#client_connections:
#  - { client: 'iqn.1994-05.com.redhat:rh7-iscsi-client', image_list: 'rbd.ansible1,rbd.ansible2', chap: 'rh7-iscsi-client/redhat', status: 'present' }
#  - { client: 'iqn.1991-05.com.microsoft:w2k12r2', image_list: 'rbd.ansible4', chap: 'w2k12r2/microsoft_w2k12', status: 'absent' }

#client_connections: {}

###############
# DEPRECATION #
###############

######################################################
# VARIABLES BELOW SHOULD NOT BE MODIFIED BY THE USER #
#               *DO NOT* MODIFY THEM                 #
######################################################

#container_exec_cmd:
#docker: false

inventory file
[mons]
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
[osds]
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
[mgrs]
<EMAIL_ADDRESS>
[grafana-server]
<EMAIL_ADDRESS>

@dsavineau Can you please tell me where I can retrieve the ceph-ansible logs?

@nizamial09 the default ceph-ansible ansible.cfg set the ansible log file to $HOME/ansible/ansible.log [1]
But if the directory doesn't exist then you won't find any log file.
[1] https://github.com/ceph/ceph-ansible/blob/master/ansible.cfg#L12

@nizamial09 I cleaned your group_vars because I don't need all the commented part
I can see you try to deploy octopus.
What ceph-ansible branch or tag are you using ?

Logs can be found here: https://pastebin.com/GTzGPDdj , Thanks @dsavineau

I am on the master branch of ceph-ansible. @dsavineau

First, use the correct ceph-ansible branch for octopus (ie: stable-5.0) [1] but this shouldn't be the root cause of the issue.
Can you run ceph -s and see if there's mgr daemons reported ?
This looks very similar to https://github.com/ceph/ceph-ansible/issues/5321
[1] https://docs.ceph.com/ceph-ansible/master/#releases

I tried stable-5.0 branch right now and same issue is happening over there also.

Can you run ceph -s and see if there's mgr daemons reported ?
I ran ceph -s in the node where mgr is supposed to run and this is what I got

[root@localhost ~]# ceph -s
  cluster:
    id:     681abf24-2123-4882-9ba9-c5fb51777186
    health: HEALTH_WARN
            OSD count 0 < osd_pool_default_size 3

  services:
    mon: 1 daemons, quorum localhost (age 4m)
    mgr: localhost(active, since 4m)
    osd: 0 osds: 0 up, 0 in

  data:
    pools:   0 pools, 0 pgs
    objects: 0 objects, 0 B
    usage:   0 B used, 0 B / 0 B avail
    pgs:

I'll explain my scenario.
I am running the ansible-playbook site.yml command from <IP_ADDRESS>.
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>

[mgrs]
<IP_ADDRESS>

I can go into each node and can see 1 mon on each node. (I am wondering how can I see the whole cluster in one place). The mgr is supposed to run on 127 but its not there. Although from one of my previous run I can see the mgr module being up in the 140. @dsavineau

Not an issue now. It had something to do with the nodes I was using. Thanks @dsavineau

@nizamial09-zz  : Hi, I'm facing same issue..
can you tell me how did you resolve this issue ?


[improvement][performance] improve lru cache resize performance and memory usage

Proposed changes
Problem Summary:
Previously we use doubly linked list for LRUCache's HandleTable, in order to support a lookup-free remove(const LRUHandle* h) function. However it 1) slows down the resize operation because we need to malloc/free the dummy LRUHandle node for each bucket 2) increases the overall memory usage.
It turns out that we can achieve fast remove(const LRUHandle* h) using just singly linked list.
Checklist(Required)

Does it affect the original behavior: (No)
Has unit tests been added: (Yes)
Has document been added or modified: (No Need)
Does it need to update dependencies: (No)
Are there any changes that cannot be rolled back: (No)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

Hi @gaodayue
Please provide test results to demonstrate the performance and memory usage benefits of singly linked list, especially at high concurrency.
The lru cache is used globally in Doris, and the resize is very low frequency. It will only be resized frequently when the BE is cold started.

@xinyiZzz thanks for your reply, I will answer inline

The lru cache is used globally in Doris, and the resize is very low frequency. It will only be resized frequently when the BE is cold started.

A bit of context for this PR: we observed several latency spikes after restarting BE and found that it's caused by the resize operation (see the graph below), so we'd like to improve the resize operation in order to avoid any query timeout.

The cluster uses 200G page cache per BE and resizing single shard to 8 million entries took >2 seconds.

Please provide test results to demonstrate the performance and memory usage benefits of singly linked list, especially at high concurrency.

I wrote a simple program to test the resize speed. From the results, we can see that for large resize, this PR reduces the resize duration by 60%. This PR also reduces the memory usage, but it's not our main concern.
-- before the PR
resize to 16 takes 5 us
resize to 32 takes 6 us
resize to 64 takes 6 us
resize to 128 takes 14 us
resize to 256 takes 23 us
resize to 512 takes 49 us
resize to 1024 takes 102 us
resize to 2048 takes 193 us
resize to 4096 takes 444 us
resize to 8192 takes 813 us
resize to 16384 takes 1708 us
resize to 32768 takes 3391 us
resize to 65536 takes 7104 us
resize to 131072 takes 16235 us
resize to 262144 takes 38272 us
resize to 524288 takes 88278 us
resize to 1048576 takes 184775 us
resize to 2097152 takes 380625 us
resize to 4194304 takes 774974 us
resize to 8388608 takes 1573816 us
resize to 16777216 takes 3170542 us

-- after the PR
resize to 16 takes 5 us
resize to 32 takes 2 us
resize to 64 takes 2 us
resize to 128 takes 2 us
resize to 256 takes 3 us
resize to 512 takes 4 us
resize to 1024 takes 8 us
resize to 2048 takes 18 us
resize to 4096 takes 36 us
resize to 8192 takes 82 us
resize to 16384 takes 170 us
resize to 32768 takes 406 us
resize to 65536 takes 753 us
resize to 131072 takes 1754 us
resize to 262144 takes 6720 us
resize to 524288 takes 24822 us
resize to 1048576 takes 58967 us
resize to 2097152 takes 132347 us
resize to 4194304 takes 278078 us
resize to 8388608 takes 587134 us
resize to 16777216 takes 1212146 us

The failed checks seem unrelated to this PR. Can anyone help to trigger the rerun?

A bit of context for this PR: we observed several latency spikes after restarting BE and found that it's caused by the resize operation (see the graph below), so we'd like to improve the resize operation in order to avoid any query timeout.
The cluster uses 200G page cache per BE and resizing single shard to 8 million entries took >2 seconds.
I wrote a simple program to test the resize speed. From the results, we can see that for large resize, this PR reduces the resize duration by 60%. This PR also reduces the memory usage, but it's not our main concern.

Convincing test results, nice job~

The failed checks seem unrelated to this PR. Can anyone help to trigger the rerun?

Try git rebase and then push again.

LGTM

Error from the Code Quality Analysis check, not related to this PR
[INFO] Doris FE Project Parent POM ........................ FAILURE [11:44 min]
[INFO] fe-common .......................................... SUCCESS [ 21.655 s]
[INFO] spark-dpp .......................................... SUCCESS [ 11.115 s]
[INFO] fe-core ............................................ SUCCESS [01:07 min]
[INFO] hive-udf ........................................... SUCCESS [ 19.401 s]
[INFO] java-udf ........................................... SUCCESS [ 46.357 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  14:33 min
[INFO] Finished at: 2022-05-18T04:06:40Z
[INFO] ------------------------------------------------------------------------
Error:  Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:<IP_ADDRESS>4:sonar (default-cli) on project fe: Project not found. Please check the ‘sonar.projectKey’ and ‘sonar.organization’ properties, the ‘SONAR_TOKEN’ environment variable, or contact the project administrator -> [Help 1]


https://opensource.microsoft.com/ "not ready"

Describe the bug
https://opensource.microsoft.com/ returns 200 OK with a body of Service not ready.
To Reproduce
Steps to reproduce the behavior:

Go to https://opensource.microsoft.com/
See error

Expected behavior
The content from this repository be served, in particular index.html
Screenshots

Desktop (please complete the following information):

OS: Windows 11 Enterprise 23H2
Browser: Microsoft Edge for Business, Version 124.0.2478.105 (Offizielles Build) (64-Bit)

Additional context
Encountered when clicking on https://opensource.microsoft.com/cla on a Microsoft Azure repository.

It's not appearing for me. Maybe it was temporarily. Can you check if it still happens?

It's not appearing for me. Maybe it was temporarily. Can you check if it still happens?

Seems fixed on my end as well :thumbsup:


pull request for e2e test at 11/13/2016 09:15:09

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

optest/docs/updated_at.md
:white_check_mark:Succeeded

Details

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Errorrunning  config  nvim-autopairs

Hi there! I configured autopairs to autoinsert parenthesis on function complete , but since I lazy load nvim-compe it doesnt work
error :

nvim-compe is loaded at InsertEnter , I tried loading nvim-autopairs after nvim-compe but doesnt work . My config :

you can put that
require("nvim-autopairs.completion.compe").setup({map_cr = true, map_complete = true})
on your compe.config function
or add  vim.cmd("packadd nvim-compe") before call a setup function

@windwp its fixed now :D
https://github.com/wbthomason/packer.nvim/issues/448#issuecomment-874291775


Add Account field to alert service

Account is an important element in managing alerts.
We decided to add it as a structured field to Alert.

As it is already applied to Alert and Event, the issue is closed.


vimPlugins.fugit2-nvim: init at 2024-12-19

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

fugit2.nvim is available as a luarocks package. Shouldn't we add it this way ?

I did try to... but then remembered we hadn't updated the luarocks updater to support single plugin additions and the rockspec doesn't solve the library dependency, it just marks it as an external dependency.


ledger: be fussier about the types of validator scripts

Now that validator scripts all have the same type, we can insist that
you only make a ValidatorScript from something that has that type.
This spots a few invalid validators - but not in our real examples, fortunately.
This has some knock-on effects: we need to use CompiledCode instead of
Script, since only the former still has the type around.
However, I think this is good. CompiledCode is more type-safe, and we had a bit
of a problem where there were two ways to do things: with
CompiledCode, or with Script. Now there is only one.

Fixes Thanks, this looks great! There is tasty-hspec if you want that, but I don't know if it supports golden tests (love that --accept) ;)

I do want some eyes on this, since it touches quite a few things.


Error in address at index.android.bundle:1

Error in UniceNotes
Error in address at index.android.bundle:1
The Sound is already loaded.
View on Bugsnag
Stacktrace
address at index.android.bundle:1 - ?anon_0_

View full stacktrace
Created automatically via Bugsnag

sound wont be a problem
Comment added in Bugsnag by Hugo
Error in address at index.android.bundle:1

An error linked to this issue has been reopened in Bugsnag
Error in address at index.android.bundle:1

n'affecte pas le fonctionnement de l'appli.
Comment added in Bugsnag by Hugo
Error in address at index.android.bundle:1

An error linked to this issue has been reopened in Bugsnag
Error in address at index.android.bundle:1


feat(struct): Struct QoL

Feature changes

Adds SchemaImplemenation open to extension, closed to construction
Adds StructSchema with .pick and .omit methods

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

38 of 38 (100.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2467

Relevant Lines:
2467

💛  - Coveralls


No information regarding VMs and host states

In the documentation about host states  it is not mentioned what is happening to the VMs running in this host, it only mentions if I can deploy new VMs there. E.g if I put a host in offline, will the VMs move away automatically? What If I put it back online. Will they automatically move back right after putting the host to on or will it take several hours / days?

Progress Status

[ ] Branch created
[ ] Code committed to development branch
[ ] Testing - QA
[ ] Documentation
[ ] Release notes - resolved issues, compatibility, known issues
[ ] Code committed to upstream release/hotfix branches
[ ] Documentation committed to upstream release/hotfix branches

host disable - running VMs are not modified, disable new deployments by Scheduler, manual deployment is still allowed, monitor enabled
host offline - running VMs are not modified, disable new deployments by Scheduler or manual, monitor disabled
host flush - disable the host and migrate all running VMs
host enable - enable monitor, enable new deployments by Scheduler. This doesn't mean old VMs will automatically return


Error returned from useFetch has different instanceof FetchError value depending if useFetch is awaited

Environment

Operating System: Linux
Node Version:     v16.20.0
Nuxt Version:     3.6.5
Nitro Version:    2.5.2
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      ssr
Runtime Modules:  -
Build Modules:    -

Reproduction
Reproduction link: https://stackblitz.com/edit/github-eykmgq?file=app.vue Please check console logs.

get error from useFetch
watch status and on error check if error.value is instanceof FetchError
get true
get error from awaited useFetch
check if error.value is instanceof FetchError
get false

Describe the bug
Error returned from useFetch has different instanceof FetchError value depending if useFetch is awaited. For awaited useFetch it's strangely false
Additional context
Please note that I'm using nuxt with ssr: false config option
Logs
No response

any update?


[ja] Update OpenID Connect Flow diagram

Fixes : #28270
Updated ja/docs/reference/access-authn-authz/authentication.md to follow v1.19 of the original (English) text.

/retitle [ja] Update OpenID Connect Flow diagram

Is this PR for resolving #28270?
If so, please update description for this PR like this or this?
We should link this PR to the related issue at least for smooth reviewing.

Is this PR for resolving #28270?
If so, please update description for this PR like this or this?
We should link this PR to the related issue at least for smooth reviewing.

Thanks for your comment.
The description has been updated.

/lgtm
Thank you for quick fixing!

As bot said, you can assign reviewers for approving this PR.
My power is LGTM only. :sweat_smile:

もとの英語的にこのほうがよさそう

/assign @nasa9084
/assign @inductor
If this is OK, please approve.

/approve
/lgtm


Crash when changing deck type

When entering options and changing deck-type, I received an error about the integer type ($c is a string initially, but then $c is used as if it's an integer.)
In the get-new-deck-type method I changed $c to an integer, cast from the string value that is read. This works without crashing.
  method get-new-deck-type {
    self.clear;
    self.draw-hands;

    say  (1) Regular  (2) Aces  (3) Jacks  (4) Aces & Jacks  (5) Sevens  (6) Eights;

    my Bool $br = False;
    my Str $b;

    loop {

	$b = self.read-one-char;
	my int $c = +$b;
      given $c {

Sorry for the late reply, I only just saw this.  It's been fixed.  Thanks for letting me know.


chore: Bump golang.org/x/net due to a vulncheck failure

Fixes #N/A
Description

Bumping<EMAIL_ADDRESS>to resolve the vulnerability
https://pkg.go.dev/vuln/GO-2024-2687

How was this change tested?
Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.02%) to 82.181%

Files with Coverage Reduction
New Missed Lines
%

pkg/providers/amifamily/ami.go
1
90.32%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
5327

Relevant Lines:
6482

💛  - Coveralls


[3.3.4] just only the first tab working with javascript, why?

Hello guys,
I created message system with tabs. So there is following;

I am just sending to Mustafa member', I can't send to Alican member'. This page's design before left side (so tab-title) get php listing to messages titles (with MySQL DISTINCT). Then so the same code getting messages.
In the fact, first tab working. 2nd, 3rd , .. , Nrd tabs doesn't work with javascript action
All this page's code I linked paste.bin: http://pastebin.com/ekqf7dL9
The Yellow button, (so it is "submit button") jquery posting with ajax my request to php file. There is its code;
<button m_isim="<?php echo $_SESSION['uyeIsim'];?>" m_atan="<?php echo $_SESSION['uyeId'];?>" m_alan="<?php echo $msjGelenUye['mesaj_alan_id'];?>" class="btn btn-warning btn-sm" id="btn-chat">Gönder</button>

Information about the variable
$_SESSION['uyeIsim'] -> user name
$msjGelenUye['mesaj_alan_id'] -> user reciever
m_atan -> transmitter

jQuery post code following;
$("#btn-chat").click(function(event){
    var msjGonderenData = {
        "mesaj_atan_id" : $(this).attr('m_atan'), //user transmitter
        "mesaj_alan_id" : $(this).attr('m_alan'), //user receiver
        "mesaj"         : $("#btn-chat-input").val() //message content
    };

    var msjAtanIsim = $(this).attr('m_isim'); //transmitter name

    //alert(msjGonderenData['mesaj']);  //just control, This is "Mustafa" working but "Alican" doesn't work

    $.ajax({
        type        :"POST",
        url         :"inc/request/msjGonder.post.php",
        data        :msjGonderenData,
        success     :function(cvp){
            if(cvp != "1"){
                $(".postCevap").html(cvp);
            }else{
                //add current message list sent message
                $("ul#"+msjGonderenData['mesaj_alan_id']+".chat").append("

 Şimdi"+msjAtanIsim+"

"+msjGonderenData['mesaj']+"

");
            }
        }
    });
});

You must read This line (starting //alert(msjGonderenData['mesaj']);) note.
How do solve this ? Thank you for interest.
Best regards..

Please post your example as a JS Bin

Also, it needs to be a reduced test case. That pastebin is much too complicated.

We'll need that reduced test case as @cvrebert mentioned, but at first glance this sounds like it might be a problem of nesting tabs (which we don't support). Closing until we hear more.


INT-2288: make resource-inbound-channel-adapter independent of OS

JIRA: https://jira.springsource.org/browse/INT-2288
Also polishing ResourceInboundChannelAdapterParserTests.java

I kind of understand what's going on, but I would suggest to look at the Spring code/docs and figure out why that happens so we may include a sentence or two in our documentations for windows users.


ci: move all CI steps from CircleCI to GitHub Actions

Agree with this as the differences between CI aren't helpful.

This is locked up due to some tests failing severely when executed in GH actions. Here's the snippet that ideally would have things work
  check:
    name: "Run CI checks on Linux"
    runs-on: ubuntu-latest
    container: golang:1.16  # match go.mod version
    steps:
      - name: "Checkout"
        uses: actions/checkout@v2

      - name: "Install Go"
        uses: actions/setup-go@v2
        with:
          go-version: '1.16.2'

      - name: "Init on first use"
        run: make init

      - name: "Run checks"
        run: make check

  test:
    name: "Run unit tests on Linux"
    runs-on: ubuntu-latest
    steps:
      - name: "Checkout"
        uses: actions/checkout@v2

      - name: "Install Go"
        uses: actions/setup-go@v2
        with:
          go-version: '1.16.2'

      - name: "Init on first use"
        run: make init

      - name: "Prefetch latest envoy"
        run: go run cmd/getenvoy/main.go fetch standard:1.17.1

      - name: "Run tests"
        run: make test GO_TEST_EXTRA_OPTS="-timeout 60s -v"

      - name: "Generate coverage report"
        run: make coverage GO_COVERAGE_EXTRA_OPTS="-p 1"

      - name: "Upload coverage report"
        uses: actions/upload-artifact@v2
        with:
          name: coverage-report
          path: build/coverage

the check task works, test runs a few until eventually they blow up like so:
ok  	github.com/tetratelabs/getenvoy/pkg/binary/envoy/controlplane	21.264s
go build github.com/tetratelabs/getenvoy/pkg/cmd.test: open /tmp/go-build1173000906/b1040/importcfg: no such file or directory
# github.com/russross/blackfriday
vet: in github.com/russross/blackfriday, can't import facts for package "bytes": open $WORK/b038/vet.out: no such file or directory
# github.com/cpuguy83/go-md2man/md2man
vet: in github.com/cpuguy83/go-md2man/md2man, can't import facts for package "bytes": open $WORK/b038/vet.out: no such file or directory
# github.com/spf13/cobra/doc
vet: in github.com/spf13/cobra/doc, can't import facts for package "bytes": open $WORK/b038/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/binary/envoy/controlplane
vet: in github.com/tetratelabs/getenvoy/pkg/binary/envoy/controlplane, can't import facts for package "errors": open $WORK/b003/vet.out: no such file or directory
# github.com/mattn/go-isatty
vet: in github.com/mattn/go-isatty, can't import facts for package "golang.org/x/sys/unix": open $WORK/b195/vet.out: no such file or directory
# github.com/opencontainers/go-digest
vet: in github.com/opencontainers/go-digest, can't import facts for package "crypto": open $WORK/b067/vet.out: no such file or directory
# github.com/docker/distribution/digestset
vet: in github.com/docker/distribution/digestset, can't import facts for package "errors": open $WORK/b003/vet.out: no such file or directory
# github.com/docker/distribution/reference
vet: in github.com/docker/distribution/reference, can't import facts for package "path": open $WORK/b036/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/extension/workspace/config
vet: in github.com/tetratelabs/getenvoy/pkg/extension/workspace/config, can't import facts for package "github.com/ghodss/yaml": open $WORK/b533/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/extension/workspace/config/toolchain/builtin
vet: in github.com/tetratelabs/getenvoy/pkg/extension/workspace/config/toolchain/builtin, can't import facts for package "path": open $WORK/b036/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/extension/workspace/config/example
vet: in github.com/tetratelabs/getenvoy/pkg/extension/workspace/config/example, can't import facts for package "github.com/pkg/errors": open $WORK/b049/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/extension/workspace/config/extension
vet: in github.com/tetratelabs/getenvoy/pkg/extension/workspace/config/extension, can't import facts for package "encoding/json": open $WORK/b039/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/util/os
vet: in github.com/tetratelabs/getenvoy/pkg/util/os, can't import facts for package "os": open $WORK/b030/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/extension/workspace/fs
vet: in github.com/tetratelabs/getenvoy/pkg/extension/workspace/fs, can't import facts for package "os": open $WORK/b030/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/extension/workspace/model
vet: in github.com/tetratelabs/getenvoy/pkg/extension/workspace/model, can't import facts for package "github.com/pkg/errors": open $WORK/b049/vet.out: no such file or directory
# github.com/tetratelabs/getenvoy/pkg/extension/workspace/toolchain/types
vet: in github.com/tetratelabs/getenvoy/pkg/extension/workspace/toolchain/types, can't import facts for package "github.com/tetratelabs/getenvoy/pkg/util/io": open $WORK/b183/vet.out: no such file or directory


List gives out date list of commit

As per the generated list date, the list is not giving correct commits of users because i have over 1200 plus commits but it shows 500 plus

There was a recent change to include only public contributions on the main page of each country. If you have mostly private contributions, you'll probabl find yourself on the subpage with private contributions included.


Idle Notifier does not consider depleted resources

Describe the bug
If my character is mining at motherlode mine, and another character is on top, the resource depleting does not interrupt the mining animation, and thus at times the idle notifier can take a prolonged time to notify that the character is idle.
To Reproduce
Steps to reproduce the behavior:

Go to motherlode mine.
Go to a spot with someone else mining
Start mining the same resource
Wait for resource depletion -- Idle Notifier will not trigger as the character is left mining 'nothing'.

Expected behavior
Understandably, the idle notifier is going by the character's animation, but it'd be good if it could also factor in the interaction object having depleted. Otherwise, over time, considerable time is spent idle without a notification.
Environment (please complete the following information):

OS: Windows
RuneLite version: 1.3.38
Launcher version: 2.1.6

Additional context

Duplicate of #9052


Look for better storage option for data

Description
As a developer, I want to look for options for scaling the repo.
Acceptance criteria

[x] ways for reducing the repo size
[x] look for other version control

Tested, lakefs and neptune. Found Lakefs more user-friendly to use.