Message159905
sqlite3/dbapi2.py contains the following -
def convert_timestamp(val):
datepart, timepart = val.split(b" ")
timepart_full = timepart.split(b".")
[...]
if len(timepart_full) == 2:
microseconds = int(timepart_full[1])
else:
microseconds = 0
It assumes that 'timepart_full[1]' is a string containing 6 digits.
I have a situation where the string containing 3 digits, so it gives the wrong result. For example, if the string is '456', this represents 456000 microseconds, but sqlite3 returns 456 microseconds.
I think that it should right-zero-fill the string to 6 digits before converting to an int, like this -
microseconds = int('{:0<6}'.format(timepart_full[1])) |
|
Date |
User |
Action |
Args |
2012-05-04 06:31:06 | frankmillman | set | recipients:
+ frankmillman |
2012-05-04 06:31:06 | frankmillman | set | messageid: <1336113066.83.0.671734474285.issue14720@psf.upfronthosting.co.za> |
2012-05-04 06:31:01 | frankmillman | link | issue14720 messages |
2012-05-04 06:31:01 | frankmillman | create | |
|