Skip to content

Commit eb54a9a

Browse files
Merge pull request #4536 from tloncorp/lb/latest-posts-gone
Fix missing latest posts
2 parents 11e883c + 346171e commit eb54a9a

File tree

3 files changed

+21
-13
lines changed

3 files changed

+21
-13
lines changed

packages/app/lib/electronDb.ts

+16-8
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { schema, setClient } from '@tloncorp/shared/db';
22
import { handleChange } from '@tloncorp/shared/db';
3+
import * as kv from '@tloncorp/shared/db';
34
import { migrations } from '@tloncorp/shared/db/migrations';
45
import { drizzle } from 'drizzle-orm/sqlite-proxy';
56

@@ -128,6 +129,9 @@ export class ElectronDb extends BaseDb {
128129
await window.sqliteBridge.purgeDb();
129130
this.client = null;
130131

132+
// reset values related to tracking db sync state
133+
await kv.headsSyncedAt.resetValue();
134+
131135
logger.log('Purged Electron SQLite database, reconnecting');
132136
await this.setupDb();
133137
}
@@ -170,18 +174,22 @@ export class ElectronDb extends BaseDb {
170174
} catch (e) {
171175
// Check if this is a "table already exists" error, which isn't fatal
172176
if (e.message && e.message.includes('already exists')) {
173-
logger.log('Migration contains tables that already exist, continuing', e);
177+
logger.log(
178+
'Migration contains tables that already exist, continuing',
179+
e
180+
);
174181
return;
175-
}
176-
182+
}
183+
177184
// For other errors, log but don't purge database
178185
logger.error('Migration failed:', e);
179-
186+
180187
// Only purge the database for critical errors that prevent app from working
181-
if (e.message && (
182-
e.message.includes('database is corrupted') ||
183-
e.message.includes('database disk image is malformed')
184-
)) {
188+
if (
189+
e.message &&
190+
(e.message.includes('database is corrupted') ||
191+
e.message.includes('database disk image is malformed'))
192+
) {
185193
logger.error('Database appears corrupted, purging and retrying');
186194
await this.purgeDb();
187195
await window.sqliteBridge.runMigrations(formattedMigrations);

packages/app/lib/nativeDb.ts

+5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { open } from '@op-engineering/op-sqlite';
22
import { escapeLog } from '@tloncorp/shared';
3+
import * as kv from '@tloncorp/shared/db';
34
import { schema, setClient } from '@tloncorp/shared/db';
45

56
import {
@@ -73,6 +74,10 @@ export class NativeDb extends BaseDb {
7374
this.connection.delete();
7475
this.connection = null;
7576
this.client = null;
77+
78+
// reset values related to tracking db sync state
79+
await kv.headsSyncedAt.resetValue();
80+
7681
logger.log('purged sqlite database, recreating');
7782
await this.setupDb();
7883
}

packages/shared/src/db/keyValue.ts

-5
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,6 @@ import * as ub from '../urbit';
1010
import { NodeBootPhase, SignupParams } from './domainTypes';
1111
import { createStorageItem } from './storageItem';
1212

13-
export const activitySeenMarker = createStorageItem<number>({
14-
key: 'activitySeenMarker',
15-
defaultValue: 1,
16-
});
17-
1813
export const pushNotificationSettings =
1914
createStorageItem<ub.PushNotificationsSetting>({
2015
key: 'settings:pushNotifications',

0 commit comments

Comments
 (0)