Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to import Airbyte configuration due 413 Request Entity Too Large error #4086

Closed
akoshterek opened this issue Jun 14, 2021 · 13 comments
Closed
Labels
priority/high High priority type/bug Something isn't working

Comments

@akoshterek
Copy link

Expected Behavior

File should be imported

Current Behavior

I have an Airbyte instance that was running for a while. I'd like to move it's configuration to another instance.
Both are 0.24.8-alpha
Export configuration works fine and produced a file slightly bigger than 1Mb.
Import fails with message

<html>
<head><title>413 Request Entity Too Large</title></head>
<body>
<center><h1>413 Request Entity Too Large</h1></center>
<hr><center>nginx/1.19.10</center>
</body>
</html>

I've unpacked the archive and found that ATTEMPTS.yaml and JOBS.yaml files are very big.
Exporting all jobs and attempts seems to be useless, or at least there should be an option to export a smaller file with the latest checkpoints only.

Severity of the bug for you

Medium
was able to recreate config from scratch

Airbyte Version

0.24.8-alpha

@akoshterek akoshterek added the type/bug Something isn't working label Jun 14, 2021
@jrhizor jrhizor added the priority/high High priority label Jun 14, 2021
@jrhizor
Copy link
Contributor

jrhizor commented Jun 14, 2021

Marking as high since it seems likely that this will be an increasingly large problem over time, and something blocking upgrades is pretty important.

We'll have to bump https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size it looks like?

@akoshterek
Copy link
Author

Increasing max request size would mitigate the problem but not solve it entirely.

I can imagine an instance with frequent syncs (append or CDC), in such case configuration archive would grow pretty fast.

Long term solution would discard too old runs IMHO. Why would I need them? Configuration and latest checkpoints should be enough in the most cases. Possibly you'd like to have different kinds of export.

@jrhizor
Copy link
Contributor

jrhizor commented Jun 14, 2021

Good point @akoshterek. I think we probably need both, since it's possible that user configs could hit the max without including any job attempts. Created #4111 to track discarding old runs.

@marcosmarxm
Copy link
Member

Close this after #4126 and #4111 will deal with the problem of large-files export.

@akoshterek
Copy link
Author

worth releasing a new version perhaps?

@cgardens
Copy link
Contributor

agreed. we should release a patch for this today. @marcosmarxm would you be willing to do that?

@asamiller
Copy link

I'm getting this error trying to upgrade to 0.26.0-alpha. Is there a patch coming?

@marcosmarxm
Copy link
Member

@asamiller 0.26.0-alpha has the solution implemented. I'll take a look on that.

@asamiller
Copy link

I was running 0.22 and exported the config. The airbyte_archive.tar.gz file is 13.2mb if that helps.

@marcosmarxm
Copy link
Member

I was able to upgrade from 0.24.2-alpha to 0.26.0-alpha. @asamiller is possible to confirm your migration process or share more information?

@asamiller
Copy link

@marcosmarxm I followed the instruction in the upgrade guide. Here's the steps I took:

  1. docker-compose down then docker-compose up -d db server webapp on my EC2 box.
  2. Export the configuration file. Got a gzip file that is 13.1mb.
  3. Migrated the config:
docker run --rm -v /Users/asa/Downloads/airbyte-migrate:/config airbyte/migration:0.26.0-alpha --\
  --input /config/airbyte_archive.tar.gz\
  --output /config/airbyte_archive_migrated.tar.gz
  1. Updated the docker-compose.yml to the current version from the repo. Then docker-compose up -d
  2. Skipped config, went to admin, clicked import, selected the airbyte_archive_migrated.tar.gz file. Then the page reloads but the configuration isn't applied. Looking in the network activity dev tool, I see api/v1/deployment/import fails with the 413 status.

When I unzip the exported config, airbyte_db/JOBS.yaml and airbyte_db/ATTEMPTS.yaml are both almost 150MB. I tried replacing them with empty files, zipping it and uploading. The import is successful, but the config doesn't apply.

@jonasgribas
Copy link

Hi dears,

Share with you if it is of importance to someone, because I have the same problem reported.
After changing Nginx to Haproxy, we immediately solved the problem. Without performing additional configuration in Haproxy...

I didn't go in depth to check why Nginx has this problem, but it was the fastest way to solve my problem, as I had a problem with Nginx in production before.

1 similar comment
@jonasgribas
Copy link

Hi dears,

Share with you if it is of importance to someone, because I have the same problem reported.
After changing Nginx to Haproxy, we immediately solved the problem. Without performing additional configuration in Haproxy...

I didn't go in depth to check why Nginx has this problem, but it was the fastest way to solve my problem, as I had a problem with Nginx in production before.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority/high High priority type/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

6 participants