Alex Tugarev d7f06d0e9d [server] allow having +1 active tokens
We've seen cases where more than one active token is persisted in the DB, which might be cased by db-sync issues. Given that this case is quite rare, this PR drops the hard assertion and replaces it by logging a warning. This is a mitigation for #7196.

Fixes #7196
2022-01-26 14:14:18 +01:00
..
2022-01-03 17:17:57 +01:00
2020-08-25 09:25:15 +00:00
2020-08-25 09:25:15 +00:00
2021-06-09 12:52:57 +02:00
2021-07-13 16:47:11 +02:00

Gitpod-db

Contains all the database related functionality, implemented using typeorm.

Adding a new table

  1. Create a migration - use the baseline as an exemplar
  2. Create a new entity that implements the requisite interface or extend an existing entity as required - see db-user.ts
  3. If it is a new table, create the matching injectable ORM implementation and interface (if required) - see user-db-impl.ts and user-db.ts. Otherwise extend the existing interface and implementation as required.
  4. Add the injectable implementation to the DB container module, binding the interface and implementation as appropriate, otherwise it will not be instantiated correctly e.g.
    bind(TypeORMUserDBImpl).toSelf().inSingletonScope();
    bind(UserDB).toService(TypeORMUserDBImpl);
  1. Add the new ORM as an injected component where required e.g. in user-controller.ts
    @inject(UserDB) protected readonly userDb: UserDB;