Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/django/db/__init__.py: 80%

16 statements  

« prev     ^ index     » next       coverage.py v6.4.4, created at 2023-07-17 14:22 -0600

1from django.core import signals 

2from django.db.utils import ( 

3 DEFAULT_DB_ALIAS, 

4 DJANGO_VERSION_PICKLE_KEY, 

5 ConnectionHandler, 

6 ConnectionRouter, 

7 DatabaseError, 

8 DataError, 

9 Error, 

10 IntegrityError, 

11 InterfaceError, 

12 InternalError, 

13 NotSupportedError, 

14 OperationalError, 

15 ProgrammingError, 

16) 

17from django.utils.connection import ConnectionProxy 

18 

19__all__ = [ 

20 "connection", 

21 "connections", 

22 "router", 

23 "DatabaseError", 

24 "IntegrityError", 

25 "InternalError", 

26 "ProgrammingError", 

27 "DataError", 

28 "NotSupportedError", 

29 "Error", 

30 "InterfaceError", 

31 "OperationalError", 

32 "DEFAULT_DB_ALIAS", 

33 "DJANGO_VERSION_PICKLE_KEY", 

34] 

35 

36connections = ConnectionHandler() 

37 

38router = ConnectionRouter() 

39 

40# For backwards compatibility. Prefer connections['default'] instead. 

41connection = ConnectionProxy(connections, DEFAULT_DB_ALIAS) 

42 

43 

44# Register an event to reset saved queries when a Django request is started. 

45def reset_queries(**kwargs): 

46 for conn in connections.all(): 

47 conn.queries_log.clear() 

48 

49 

50signals.request_started.connect(reset_queries) 

51 

52 

53# Register an event to reset transaction state and close connections past 

54# their lifetime. 

55def close_old_connections(**kwargs): 

56 for conn in connections.all(): 

57 conn.close_if_unusable_or_obsolete() 

58 

59 

60signals.request_started.connect(close_old_connections) 

61signals.request_finished.connect(close_old_connections)