question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

changed @connection directives make `amplify push` unusable

See original GitHub issue

Describe the bug It seems like the @connection directives are broken in some fundamental way with respect to amplify push.

To Reproduce Steps to reproduce the behavior:

  1. Create a GraphQL api
  2. Use some @connection directives
  3. After a couple pushes involving deleting a directive, and maybe adding it back under a different field or name, amplify push will stop working with the Resource is not in the state stackUpdateComplete error.

Stack Trace I can post a stack trace the next time this happens.

Expected behavior When I use Amplify, I have this constant fear that my app will fall into this push state where it’s completely unrecoverable. What I expect/would be nice is some way to back out, or rollback, to a point where everything works again. This has happened now a couple times now and the only way forward, which it now looks like I will have to do yet again, is to nuke the entire API and start over.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Reactions:12
  • Comments:15 (2 by maintainers)

github_iconTop GitHub Comments

5reactions
MathiasBerwigcommented, Mar 22, 2019

@grudra7714 Under the Amplify paradigm, once you get into production, you’d be developing new schema changes on a different environment than master. (Like development). Doing that kind of stuff on master will likely result in bad times.

@hew I’m also concerned about pushing new features to production. Even after coding and testing in a dev-something environment, sometime the new schema will be merged with the old one - and at this point I feel that the problems will arise. Right now my plan is to deploy a new master with all the features, transfer the data from old to new database and finally change the clients endpoint.

During development iterations I did several changes to the API, but 99% of them were not pushed by amplify api push. I believe the worst part is the time that the CLI take to figure the errors or send the updates. With ~10 types, the stack takes around 20 minutes to complete. Depending the stage it fails, it takes 30 minutes for one try.

I’m afraid that due some deadlines there won’t be another option to deliver our product, but I’m counting the amplify-cli will evolve in such a way that the push will work flawlessly.

5reactions
grudra7714commented, Mar 21, 2019

What would be a good temporary strategy if this happens in a production environment?

Checking out to a new env would mean new datasources (which we dont want) and at the same point cannot stop updating the models if there is an urgent need.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Troubleshooting Amplify identity and access
Use the following information to help you diagnose and fix common issues that you might encounter when working with Amplify and IAM. If...
Read more >
I get this error when deploying a new data model in aws amplify
I recently updated the amplify cli to the latest version and only after that I'm getting these errors. I'm very new to programming....
Read more >
Project-level configurations - Troubleshooting guide
A change to Amplify-generated resource from outside of Amplify, such as using the AWS console, is called an "unmanaged change". The Amplify CLI...
Read more >
Avoiding the Top 10 NGINX Configuration Mistakes
Here's why more FDs are needed: each connection from an NGINX worker ... these clients can also use the API to make configuration...
Read more >
Quickstart
Once you have made your category updates, run the command amplify push to update ... In the manual Auth CLI workflow, you will...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found