diff --git a/lib/rucio/db/sqla/__init__.py b/lib/rucio/db/sqla/__init__.py index 33d61fb1d9..8dd71973eb 100644 --- a/lib/rucio/db/sqla/__init__.py +++ b/lib/rucio/db/sqla/__init__.py @@ -12,10 +12,21 @@ # See the License for the specific language governing permissions and # limitations under the License. +from typing import TYPE_CHECKING, Optional + from sqlalchemy.sql.expression import bindparam, text +if TYPE_CHECKING: + from sqlalchemy.orm import Query, Session + -def filter_thread_work(session, query, total_threads, thread_id, hash_variable=None): +def filter_thread_work( + session: "Session", + query: "Query", + total_threads: Optional[int], + thread_id: Optional[int], + hash_variable: Optional[str] = None +) -> "Query": """ Filters a query to partition thread workloads based on the thread id and total number of threads """ if thread_id is not None and total_threads is not None and (total_threads - 1) > 0: if session.bind.dialect.name == 'oracle':