Skip to content

Commit

Permalink
Backend: GET /api/offers max page size limited to 100 to avoid OOM
Browse files Browse the repository at this point in the history
  • Loading branch information
lwitkowski committed Aug 6, 2024
1 parent 89fd2a8 commit 59e47d2
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
4 changes: 2 additions & 2 deletions backend/api/flask_app.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ def aircraft_models():
@app.route('/api/offers')
def offers():
return jsonify(db.get_offers_dict(aircraft_type=request.args.get('aircraft_type'),
offset=request.args.get('offset'),
limit=request.args.get('limit')))
offset=int(request.args.get('offset') or '0'),
limit=int(request.args.get('limit') or '30')))

@app.route("/api/offers/<manufacturer>/<model>")
def model_information(manufacturer, model):
Expand Down
6 changes: 3 additions & 3 deletions backend/db.py
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ def get_offers_for_model(manufacturer, model):
session.close()


def get_offers_dict(limit=None, offset=None, aircraft_type=None):
def get_offers_dict(limit: int = 30, offset: int = 0, aircraft_type=None):
session = Session()
try:
offers = session.query(AircraftOffer).order_by(AircraftOffer.date.desc())
Expand All @@ -149,8 +149,8 @@ def get_offers_dict(limit=None, offset=None, aircraft_type=None):
else:
offers = offers.filter(AircraftOffer.aircraft_type is not None)

if limit is not None:
offers = offers.limit(limit)
offers = offers.limit(min(limit, 100))

if offset is not None:
offers = offers.offset(offset)
offers = offers.all()
Expand Down

0 comments on commit 59e47d2

Please sign in to comment.