Wp-calypso: Unable to create new site

Created on 4 Mar 2020  ·  15Comments  ·  Source: Automattic/wp-calypso

Steps to reproduce

  1. I tried to create a site via https://wordpress.com/start/
  2. Go through flow, picking domain and Professional plan.
  3. Upon picking plan, get kicked back to https://wordpress.com/start/domains-with-preview with error Please enter a site name..

What I expected

I could make a new site!

What happened instead

I was given a vague error that doesn't make sense to me.

Browser / OS version

Chrome 80.0.3987.122, macOS 10.15.3.

Screenshot / Video

Video here: https://d.pr/v/U4SH6m

Context / Source

Experimenting before doing a demo.

Signup [Type] Bug

Most helpful comment

Okay, I have a HAR log here: pbAok1-pR-p2#comment-871

Specifically for site/new, here's my request:

{
    "blog_title":"Out in Fashion",
    "options":{
        "theme":"pub/maywood",
        "use_theme_annotation":false,
        "site_segment":1,
        "site_vertical":"p19v6",
        "site_vertical_name":"Fashion Designer",
        "site_information":{
            "title":"Out in Fashion"
        },
        "site_creation_flow":"onboarding"
    },
    "public":-1,
    "validate":false,
    "blog_name":"bfsgasdfgfs.design",
    "find_available_url":true,
    "client_id":"[redacted]",
    "client_secret":"[redacted]",
    "lang_id":1,
    "locale":"en"
}

And here's the response:

{
    "code":400,
    "headers":[
        {
            "name":"Content-Type",
            "value":"application\/json"
        }
    ],
    "body":{
        "error":"blog_name_required",
        "message":"Please enter a site name."
    }
}

Let me know if there's any other way I can assist with debugging this.

All 15 comments

Chatting with @ChaosExAnima

Some other notes:

  • Clicking on a paid domain in the domain step was triggering a site creation request. https://public-api.wordpress.com/rest/v1.1/sites/new This shouldn't happen normally. We proceed to the plan step instead.
  • Response was returning blog_name_required suggesting the client request was malformed.
  • User existed before and had multiple sites
  • I was unable to reproduce even when setting A/B tests.

Active AB Tests:

{"customerHomeAll_20200224":"control","sidebarUpsellNudgeUnification_20200221":"control","showCompositeCheckout_20200221":"composite","domainStepDesignUpdates_20200220":"control","domainStepCopyUpdates_20191121":"variantShowUpdates","pageBuilderMVP_20190419":"control"}

See also p1583273358009300-slack-dotcom for a video

I also tried my best to reproduce this error journey in various signup flows with the signup state intact/fresh, and with all and no A/B test variants enabled.

🤷‍♂

We can trigger the error by sending '' as the value of blog_name to sites/new

Screen Shot 2020-03-04 at 11 53 47 am

If @ChaosExAnima or anyone else can reliably reproduce this we could engage in a little preemptive strike action and extend our fallbacks wherever we're setting the blog_name request parameter in the client.

It would be great to capture the network request headers too if reproducible.

I can still repro, so I will attempt to capture network logs. If there's a way for me to capture things via my sandbox as well, please let me know!

Okay, I have a HAR log here: pbAok1-pR-p2#comment-871

Specifically for site/new, here's my request:

{
    "blog_title":"Out in Fashion",
    "options":{
        "theme":"pub/maywood",
        "use_theme_annotation":false,
        "site_segment":1,
        "site_vertical":"p19v6",
        "site_vertical_name":"Fashion Designer",
        "site_information":{
            "title":"Out in Fashion"
        },
        "site_creation_flow":"onboarding"
    },
    "public":-1,
    "validate":false,
    "blog_name":"bfsgasdfgfs.design",
    "find_available_url":true,
    "client_id":"[redacted]",
    "client_secret":"[redacted]",
    "lang_id":1,
    "locale":"en"
}

And here's the response:

{
    "code":400,
    "headers":[
        {
            "name":"Content-Type",
            "value":"application\/json"
        }
    ],
    "body":{
        "error":"blog_name_required",
        "message":"Please enter a site name."
    }
}

Let me know if there's any other way I can assist with debugging this.

Thank a lot for capturing the data @ChaosExAnima

This is highly weird. Was it reproducible in an incognito window as well? Just thinking there might be something strange caught in the state.signup store.

I'll do some more investigation today.

This boggles my mind.

In your request params blog_name has a value, which, if empty, should be the only way to get that error.

Not to mention why sites/new is being called in the first place.

I tried creating a new site over at wordpress.com/start

My request payload is identical and I cannot reproduce this on any browser.

Screen Shot 2020-03-05 at 1 36 31 pm

🤷‍♂

I'll add it to the Dotcom priority issues backlog, but I dare say it won't be promoted until we get some secondary verification.

Weird one! Could it have been a temporary glitch? Server timeout, fatal error, etc. If you have the exact timestamp of the request, you could look in Kibana (logstash) for any related errors at the same time.

My guess is an API error or server timeout.

I can repro in incognito, though I'll have to try with a fake account as I've been using my account so far. If anyone can tell me how to grab the state from the backend please let me know, I can test with my sandbox :)

Weird one! Could it have been a temporary glitch? Server timeout, fatal error, etc. If you have the exact timestamp of the request, you could look in Kibana (logstash) for any related errors at the same time.

My guess is an API error or server timeout.

I've been able to repro over multiple days. I'll see about Kibana, good idea!

Hi @ChaosExAnima — would you mind re-testing with the current signup flow steps?

@lancewillett - Just tried again and no dice. Sorry :/

Sorry, just trying to eliminate everything.

Are you using a new account or the same account each time?

@ramonjd - Seems to just be my account. New accounts work.

A true Chaos Wrangler, Echo is — good for stress-testing WordPress.com, though. 😸

Closing this as I figured out what's going down! I've left a comment on pbAok1-pR-p2 with details, as it's not related to Calypso.

Was this page helpful?
0 / 5 - 0 ratings