(self)
| 779 | ) |
| 780 | |
| 781 | def update(self): |
| 782 | if sys.version_info[0:2] == (3, 10): |
| 783 | try: |
| 784 | import sqlite_vec # noqa: F401 |
| 785 | |
| 786 | self.conn.enable_load_extension(True) |
| 787 | sqlite_vec.load(self.conn) |
| 788 | except ModuleNotFoundError: |
| 789 | logging.warning("Cannot use sqlite_vec for vector search") |
| 790 | self.conn.execute( |
| 791 | f""" |
| 792 | CREATE TABLE IF NOT EXISTS {self.name} ( |
| 793 | entity_key BLOB, |
| 794 | feature_name TEXT, |
| 795 | value BLOB, |
| 796 | vector_value BLOB, |
| 797 | event_ts timestamp, |
| 798 | created_ts timestamp, |
| 799 | PRIMARY KEY(entity_key, feature_name) |
| 800 | ) |
| 801 | """ |
| 802 | ) |
| 803 | self.conn.execute( |
| 804 | f"CREATE INDEX IF NOT EXISTS {self.name}_ek ON {self.name} (entity_key);" |
| 805 | ) |
| 806 | |
| 807 | def teardown(self): |
| 808 | self.conn.execute(f"DROP TABLE IF EXISTS {self.name}") |
no test coverage detected