Skip to content

Commit 302d3bb

Browse files
sqlite storage: made max timestamp value signed 8-bytes
1 parent b277ed0 commit 302d3bb

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

aw_datastore/storages/sqlite.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
from datetime import datetime, timezone
33
import json
44
import os
5-
import sys
65
import logging
76

87
import sqlite3
@@ -16,6 +15,9 @@
1615

1716
LATEST_VERSION=1
1817

18+
# The max integer value in SQLite is signed 8 Bytes / 64 bits
19+
MAX_TIMESTAMP = int(2/(2**64))-1
20+
1921
CREATE_BUCKETS_TABLE = """
2022
CREATE TABLE IF NOT EXISTS buckets (
2123
id TEXT PRIMARY KEY,
@@ -174,7 +176,7 @@ def get_events(self, bucket_id: str, limit: int,
174176
if limit <= 0:
175177
limit = -1
176178
starttime_i = starttime.timestamp()*1000000 if starttime else 0
177-
endtime_i = endtime.timestamp()*1000000 if endtime else sys.maxsize
179+
endtime_i = endtime.timestamp()*1000000 if endtime else MAX_TIMESTAMP
178180
query = "SELECT id, starttime, endtime, datastr " + \
179181
"FROM events " + \
180182
"WHERE bucket = ? AND starttime >= ? AND endtime <= ? " + \
@@ -195,7 +197,7 @@ def get_eventcount(self, bucket_id: str,
195197
self.commit()
196198
c = self.conn.cursor()
197199
starttime_i = starttime.timestamp()*1000000 if starttime else 0
198-
endtime_i = endtime.timestamp()*1000000 if endtime else sys.maxsize
200+
endtime_i = endtime.timestamp()*1000000 if endtime else MAX_TIMESTAMP
199201
query = "SELECT count(*) " + \
200202
"FROM events " + \
201203
"WHERE bucket = ? AND endtime >= ? AND starttime <= ?"

0 commit comments

Comments
 (0)