Skip to content

Commit a1ee341

Browse files
committed
@pcrespov review: add some nice touch
1 parent 831b73d commit a1ee341

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

services/storage/src/simcore_service_storage/modules/db/file_meta_data.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22
import datetime
33
from collections.abc import AsyncGenerator
44
from pathlib import Path
5-
from typing import TypeAlias
5+
from typing import Annotated, TypeAlias
66

77
import sqlalchemy as sa
88
from models_library.basic_types import SHA256Str
99
from models_library.projects import ProjectID
1010
from models_library.projects_nodes_io import NodeID, SimcoreS3FileID
1111
from models_library.users import UserID
1212
from models_library.utils.fastapi_encoders import jsonable_encoder
13-
from pydantic import BaseModel
13+
from pydantic import BaseModel, Field, validate_call
1414
from simcore_postgres_database.storage_models import file_meta_data
1515
from simcore_postgres_database.utils_repos import (
1616
pass_or_acquire_connection,
@@ -227,18 +227,24 @@ async def try_get_directory(
227227
return None
228228
return None
229229

230+
@validate_call(config={"arbitrary_types_allowed": True})
230231
async def list_child_paths(
231232
self,
232233
*,
233234
connection: AsyncConnection | None = None,
234-
filter_by_project_ids: list[ProjectID] | None,
235+
filter_by_project_ids: Annotated[
236+
list[ProjectID] | None, Field(max_length=10000)
237+
],
235238
filter_by_file_prefix: Path | None,
236239
cursor: GenericCursor | None,
237240
limit: int,
238241
is_partial_prefix: bool,
239242
) -> tuple[list[PathMetaData], GenericCursor | None, TotalChildren]:
240243
"""returns a list of FileMetaDataAtDB that are one level deep.
241244
e.g. when no filter is used, these are top level objects
245+
246+
NOTE: if filter_by_project_ids is huge, this will raise ValidationError and someone needs to fix it!
247+
Maybe using a DB join
242248
"""
243249

244250
cursor_params = _init_pagination(

0 commit comments

Comments
 (0)