-
Notifications
You must be signed in to change notification settings - Fork 29
Closed
Description
On CockroachDB master (a regression after cockroachdb/cockroach@917005b, perhaps):
> CREATE TABLE "example" ("id" integer NOT NULL PRIMARY KEY DEFAULT unique_rowid(), "start" timestamptz NOT NULL, "end" timestamptz NOT NULL);
> INSERT INTO "example" ("start", "end") VALUES ('2010-06-25T12:15:30.747000-05:00'::timestamptz, '2010-06-25T12:15:30.747000-05:00'::timestamptz);
> UPDATE "example" SET "end" = ("end" + '104166 days 57599.999999 seconds'::interval) WHERE true;
> SELECT ("end" - "start") AS "delta" FROM "example";
2499999:59:59.999999That's the expected result. Now setting a time zone before the update:
> TRUNCATE "example";
> INSERT INTO "example" ("start", "end") VALUES ('2010-06-25T12:15:30.747000-05:00'::timestamptz, '2010-06-25T12:15:30.747000-05:00'::timestamptz);
> SET TIME ZONE 'America/Chicago';
> UPDATE "example" SET "end" = ("end" + '104166 days 57599.999999 seconds'::interval) WHERE true;
> SELECT ("end" - "start") AS "delta" FROM "example";
delta
------------------------
2500000:59:59.999999The result is expected to stay the same.
The failing Django test:
======================================================================
FAIL: test_datetime_subtraction_microseconds (expressions.tests.FTimeDeltaTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/tim/code/django/django/test/testcases.py", line 1247, in skip_wrapper
return test_func(*args, **kwargs)
File "/home/tim/code/django/tests/expressions/tests.py", line 1516, in test_datetime_subtraction_microseconds
self.assertEqual(e.delta, delta)
AssertionError: datetime.timedelta(days=104166, seconds=61199, microseconds=999999) != datetime.timedelta(days=104166, seconds=57599, microseconds=999999)
Metadata
Metadata
Assignees
Labels
No labels