From: Mike Bayer Date: Wed, 24 Jun 2020 23:47:52 +0000 (-0400) Subject: Use time.perf_counter() for cache time measurement X-Git-Tag: rel_1_4_0b1~260 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=003333f0612562f2d97aa9090795dc0801779b5a;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git Use time.perf_counter() for cache time measurement See https://twitter.com/raymondh/status/1275937373080023040 Change-Id: Iaa0abb0c433ccedfbd88d00e3970120242ba379b --- diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index 1a8dbb4cda..cef7194981 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -16,7 +16,6 @@ as the base class for their own corresponding classes. import codecs import random import re -import time import weakref from . import cursor as _cursor @@ -1027,7 +1026,7 @@ class DefaultExecutionContext(interfaces.ExecutionContext): if self.compiled is None: return "raw sql" - now = time.time() + now = util.perf_counter() if self.compiled.cache_key is None: return "no key %.5fs" % (now - self.compiled._gen_time,) elif self.cache_hit: diff --git a/lib/sqlalchemy/sql/compiler.py b/lib/sqlalchemy/sql/compiler.py index 61178291ad..b5e85ffb86 100644 --- a/lib/sqlalchemy/sql/compiler.py +++ b/lib/sqlalchemy/sql/compiler.py @@ -28,7 +28,6 @@ import contextlib import itertools import operator import re -import time from . import base from . import coercions @@ -482,7 +481,7 @@ class Compiled(object): self.string = self.preparer._render_schema_translates( self.string, schema_translate_map ) - self._gen_time = time.time() + self._gen_time = util.perf_counter() def _execute_on_connection( self, connection, multiparams, params, execution_options diff --git a/lib/sqlalchemy/util/__init__.py b/lib/sqlalchemy/util/__init__.py index 273570357b..fb90975a18 100644 --- a/lib/sqlalchemy/util/__init__.py +++ b/lib/sqlalchemy/util/__init__.py @@ -61,6 +61,7 @@ from .compat import itertools_filterfalse # noqa from .compat import namedtuple # noqa from .compat import next # noqa from .compat import parse_qsl # noqa +from .compat import perf_counter # noqa from .compat import pickle # noqa from .compat import print_ # noqa from .compat import py2k # noqa diff --git a/lib/sqlalchemy/util/compat.py b/lib/sqlalchemy/util/compat.py index 5c46395f9a..806ef8ae18 100644 --- a/lib/sqlalchemy/util/compat.py +++ b/lib/sqlalchemy/util/compat.py @@ -99,6 +99,7 @@ if py3k: from io import BytesIO as byte_buffer from io import StringIO from itertools import zip_longest + from time import perf_counter from urllib.parse import ( quote_plus, unquote_plus, @@ -192,6 +193,7 @@ else: from StringIO import StringIO # noqa from cStringIO import StringIO as byte_buffer # noqa from itertools import izip_longest as zip_longest # noqa + from time import clock as perf_counter # noqa from urllib import quote # noqa from urllib import quote_plus # noqa from urllib import unquote # noqa