Skip to content

Commit d5c05b8

Browse files
committed
CLI: Only query current_timestamp() if min_age or max_age specified
1 parent dddfd33 commit d5c05b8

File tree

2 files changed

+17
-13
lines changed

2 files changed

+17
-13
lines changed

data_diff/__main__.py

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -307,18 +307,22 @@ def _main(
307307
else:
308308
db2 = connect(database2, threads2 or threads)
309309

310-
now: datetime = db1.query(current_timestamp(), datetime)
311-
now = now.replace(tzinfo=None)
312-
try:
313-
options = dict(
314-
min_update=max_age and parse_time_before(now, max_age),
315-
max_update=min_age and parse_time_before(now, min_age),
316-
case_sensitive=case_sensitive,
317-
where=where,
318-
)
319-
except ParseError as e:
320-
logging.error(f"Error while parsing age expression: {e}")
321-
return
310+
options = dict(
311+
case_sensitive=case_sensitive,
312+
where=where,
313+
)
314+
315+
if min_age or max_age:
316+
now: datetime = db1.query(current_timestamp(), datetime)
317+
now = now.replace(tzinfo=None)
318+
try:
319+
if max_age:
320+
options["min_update"] = parse_time_before(now, max_age)
321+
if min_age:
322+
options["max_update"] = parse_time_before(now, min_age)
323+
except ParseError as e:
324+
logging.error(f"Error while parsing age expression: {e}")
325+
return
322326

323327
dbs = db1, db2
324328

tests/test_cli.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,4 +68,4 @@ def test_options(self):
6868
"--max-age",
6969
"1h",
7070
)
71-
assert len(diff) == 1
71+
assert len(diff) == 1, diff

0 commit comments

Comments
 (0)