Skip to content

Commit cd18eb9

Browse files
author
Benjamin Pasero
committed
storage - beforeClose() is actually not needed
1 parent d63ebe3 commit cd18eb9

4 files changed

Lines changed: 3 additions & 24 deletions

File tree

src/vs/base/node/storage.ts

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ export interface IStorage extends IDisposable {
6767
set(key: string, value: any): Thenable<void>;
6868
delete(key: string): Thenable<void>;
6969

70-
beforeClose(): void;
7170
close(): Thenable<void>;
7271

7372
checkIntegrity(full: boolean): Thenable<string>;
@@ -92,7 +91,6 @@ export class Storage extends Disposable implements IStorage {
9291
private cache: Map<string, string> = new Map<string, string>();
9392

9493
private flushDelayer: ThrottledDelayer<void>;
95-
private flushDelay = Storage.DEFAULT_FLUSH_DELAY;
9694

9795
private pendingDeletes: Set<string> = new Set<string>();
9896
private pendingInserts: Map<string, string> = new Map();
@@ -103,7 +101,7 @@ export class Storage extends Disposable implements IStorage {
103101
) {
104102
super();
105103

106-
this.flushDelayer = this._register(new ThrottledDelayer(this.flushDelay));
104+
this.flushDelayer = this._register(new ThrottledDelayer(Storage.DEFAULT_FLUSH_DELAY));
107105

108106
this.registerListeners();
109107
}
@@ -237,7 +235,7 @@ export class Storage extends Disposable implements IStorage {
237235
this._onDidChangeStorage.fire(key);
238236

239237
// Accumulate work by scheduling after timeout
240-
return this.flushDelayer.trigger(() => this.flushPending(), this.flushDelay);
238+
return this.flushDelayer.trigger(() => this.flushPending());
241239
}
242240

243241
delete(key: string): Thenable<void> {
@@ -261,11 +259,7 @@ export class Storage extends Disposable implements IStorage {
261259
this._onDidChangeStorage.fire(key);
262260

263261
// Accumulate work by scheduling after timeout
264-
return this.flushDelayer.trigger(() => this.flushPending(), this.flushDelay);
265-
}
266-
267-
beforeClose(): void {
268-
this.flushDelay = 0; // when we are about to close, reduce our flush delay to 0 to consume too much time
262+
return this.flushDelayer.trigger(() => this.flushPending());
269263
}
270264

271265
close(): Thenable<void> {

src/vs/base/test/node/storage/storage.test.ts

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,6 @@ suite('Storage Library', () => {
9090
await Promise.all([delete1Promise, delete2Promise, delete3Promise]).then(() => deletePromiseResolved = true);
9191
equal(deletePromiseResolved, true);
9292

93-
storage.beforeClose();
9493
await storage.close();
9594
await del(storageDir, tmpdir());
9695
});
@@ -147,7 +146,6 @@ suite('Storage Library', () => {
147146
database.fireDidChangeItemsExternal({ items: change });
148147
equal(changes.size, 0);
149148

150-
storage.beforeClose();
151149
await storage.close();
152150
await del(storageDir, tmpdir());
153151
});
@@ -168,7 +166,6 @@ suite('Storage Library', () => {
168166
let setPromiseResolved = false;
169167
Promise.all([set1Promise, set2Promise]).then(() => setPromiseResolved = true);
170168

171-
storage.beforeClose();
172169
await storage.close();
173170

174171
equal(setPromiseResolved, true);
@@ -179,7 +176,6 @@ suite('Storage Library', () => {
179176
equal(storage.get('foo'), 'bar');
180177
equal(storage.get('bar'), 'foo');
181178

182-
storage.beforeClose();
183179
await storage.close();
184180

185181
storage = new Storage(new SQLiteStorageDatabase(join(storageDir, 'storage.db')));
@@ -194,7 +190,6 @@ suite('Storage Library', () => {
194190
let deletePromiseResolved = false;
195191
Promise.all([delete1Promise, delete2Promise]).then(() => deletePromiseResolved = true);
196192

197-
storage.beforeClose();
198193
await storage.close();
199194

200195
equal(deletePromiseResolved, true);
@@ -205,7 +200,6 @@ suite('Storage Library', () => {
205200
ok(!storage.get('foo'));
206201
ok(!storage.get('bar'));
207202

208-
storage.beforeClose();
209203
await storage.close();
210204
await del(storageDir, tmpdir());
211205
});
@@ -248,7 +242,6 @@ suite('Storage Library', () => {
248242
await Promise.all([set4Promise, delete1Promise]).then(() => setAndDeletePromiseResolved = true);
249243
ok(setAndDeletePromiseResolved);
250244

251-
storage.beforeClose();
252245
await storage.close();
253246
await del(storageDir, tmpdir());
254247
});
@@ -627,7 +620,6 @@ suite('SQLite Storage Library', () => {
627620
equal(items.get('foo3'), 'bar');
628621
equal(items.get('some/foo3/path'), 'some/bar/path');
629622

630-
storage.beforeClose();
631623
await storage.close();
632624

633625
await del(storageDir, tmpdir());

src/vs/platform/storage/node/storageMainService.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -368,9 +368,6 @@ export class StorageMainService extends Disposable implements IStorageMainServic
368368
close(): Thenable<void> {
369369
this.logService.trace('StorageMainService#close() - begin');
370370

371-
// Signal to storage that we are about to close
372-
this.storage.beforeClose();
373-
374371
// Signal as event so that clients can still store data
375372
this._onWillSaveState.fire();
376373

src/vs/platform/storage/node/storageService.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -368,10 +368,6 @@ export class StorageService extends Disposable implements IStorageService {
368368

369369
close(): Promise<void> {
370370

371-
// Signal to storage that we are about to close
372-
this.globalStorage.beforeClose();
373-
this.workspaceStorage.beforeClose();
374-
375371
// Signal as event so that clients can still store data
376372
this._onWillSaveState.fire({ reason: WillSaveStateReason.SHUTDOWN });
377373

0 commit comments

Comments
 (0)