diff --git a/.changeset/remove-initialized-flag.md b/.changeset/remove-initialized-flag.md new file mode 100644 index 000000000..70a883279 --- /dev/null +++ b/.changeset/remove-initialized-flag.md @@ -0,0 +1,5 @@ +--- +"@iqai/adk": patch +--- + +refactor: remove redundant initialized flag from DatabaseSessionService diff --git a/packages/adk/src/sessions/database-session-service.ts b/packages/adk/src/sessions/database-session-service.ts index 9f609b21e..7f033261a 100644 --- a/packages/adk/src/sessions/database-session-service.ts +++ b/packages/adk/src/sessions/database-session-service.ts @@ -75,7 +75,6 @@ export interface DatabaseSessionServiceConfig { export class DatabaseSessionService extends BaseSessionService { private db: Kysely; - private initialized = false; private initPromise: Promise | null = null; constructor(config: DatabaseSessionServiceConfig) { @@ -95,9 +94,6 @@ export class DatabaseSessionService extends BaseSessionService { * Uses promise deduplication so concurrent callers share a single initialization. */ private initializeDatabase(): Promise { - if (this.initialized) { - return Promise.resolve(); - } if (this.initPromise) { return this.initPromise; } @@ -107,7 +103,6 @@ export class DatabaseSessionService extends BaseSessionService { // Clear the promise on failure to allow retries. promise.catch(() => { - // Avoid race conditions if a new initialization has started. if (this.initPromise === promise) { this.initPromise = null; } @@ -204,7 +199,6 @@ export class DatabaseSessionService extends BaseSessionService { .column("user_id") .execute(); - this.initialized = true; } catch (error) { console.error("Error initializing database:", error); throw error; @@ -215,9 +209,7 @@ export class DatabaseSessionService extends BaseSessionService { * Ensure database is initialized before any operation */ private async ensureInitialized(): Promise { - if (!this.initialized) { - await this.initializeDatabase(); - } + await this.initializeDatabase(); } private generateSessionId(): string {