Remove performance logs (#6709)
We have found the root cause of the issue: - when using a datasource (including the cached ones), we are fetching ObjectMetadataCollection from cache (700kB). Datasource usage is happening any time we are using twentyORM, which is everywhere in the jobs and in some resolvers (including the GetCurrentUser one). This is leading to a high load on redis and leading to the performance issues we are seeing. - we actually don't need to fetch this objectMetadataCollection while using a cached datasource, only when we instantiate a new one
This commit is contained in:
@ -40,24 +40,18 @@ export class UserService extends TypeOrmQueryService<User> {
|
||||
return null;
|
||||
}
|
||||
|
||||
console.time('loadWorkspaceMember repo');
|
||||
const workspaceMemberRepository =
|
||||
await this.twentyORMGlobalManager.getRepositoryForWorkspace<WorkspaceMemberWorkspaceEntity>(
|
||||
user.defaultWorkspaceId,
|
||||
'workspaceMember',
|
||||
);
|
||||
|
||||
console.timeEnd('loadWorkspaceMember repo');
|
||||
|
||||
console.time('loadWorkspaceMember find');
|
||||
const workspaceMember = await workspaceMemberRepository.findOne({
|
||||
where: {
|
||||
userId: user.id,
|
||||
},
|
||||
});
|
||||
|
||||
console.timeEnd('loadWorkspaceMember find');
|
||||
|
||||
return workspaceMember;
|
||||
}
|
||||
|
||||
@ -66,21 +60,14 @@ export class UserService extends TypeOrmQueryService<User> {
|
||||
return [];
|
||||
}
|
||||
|
||||
console.time('loadWorkspaceMembers repo');
|
||||
const workspaceMemberRepository =
|
||||
await this.twentyORMGlobalManager.getRepositoryForWorkspace<WorkspaceMemberWorkspaceEntity>(
|
||||
workspace.id,
|
||||
'workspaceMember',
|
||||
);
|
||||
|
||||
console.timeEnd('loadWorkspaceMembers repo');
|
||||
|
||||
console.time('loadWorkspaceMembers find');
|
||||
|
||||
const workspaceMembers = workspaceMemberRepository.find();
|
||||
|
||||
console.timeEnd('loadWorkspaceMembers find');
|
||||
|
||||
return workspaceMembers;
|
||||
}
|
||||
|
||||
|
||||
@ -98,7 +98,6 @@ export class UserResolver {
|
||||
nullable: true,
|
||||
})
|
||||
async workspaceMember(@Parent() user: User): Promise<WorkspaceMember | null> {
|
||||
console.time('resolver workspaceMember');
|
||||
const workspaceMember = await this.userService.loadWorkspaceMember(user);
|
||||
|
||||
if (workspaceMember && workspaceMember.avatarUrl) {
|
||||
@ -109,7 +108,6 @@ export class UserResolver {
|
||||
|
||||
workspaceMember.avatarUrl = `${workspaceMember.avatarUrl}?token=${avatarUrlToken}`;
|
||||
}
|
||||
console.timeEnd('resolver workspaceMember');
|
||||
|
||||
// TODO: Fix typing disrepency between Entity and DTO
|
||||
return workspaceMember as WorkspaceMember | null;
|
||||
@ -119,7 +117,6 @@ export class UserResolver {
|
||||
nullable: true,
|
||||
})
|
||||
async workspaceMembers(@Parent() user: User): Promise<WorkspaceMember[]> {
|
||||
console.time('resolver workspaceMembers');
|
||||
const workspaceMembers = await this.userService.loadWorkspaceMembers(
|
||||
user.defaultWorkspace,
|
||||
);
|
||||
@ -135,8 +132,6 @@ export class UserResolver {
|
||||
}
|
||||
}
|
||||
|
||||
console.timeEnd('resolver workspaceMembers');
|
||||
|
||||
// TODO: Fix typing disrepency between Entity and DTO
|
||||
return workspaceMembers as WorkspaceMember[];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user