Base solution for your next web application

Activities of "tinytownsoftware"

Answer

Thank you very much!

Answer

I see. I have very simple permissioning that doesn't change. Is there any way to increase this cache's ttl so as to minimize these queries?

Answer

Intersting. I don't see how that is possible. That is a manual/interactive administrator action, so I don't see how it's being executed 14 times per minute. Could there be another place? It looks like it's happening on page loads.

I figured this out on my own. For those who are having the same issue, add this line to AppNameApplicationModule.cs in PreIntialize():

BackgroundJobManager.JobPollPeriod = 60 * 60 * 1000;

I had to do the same. There is no easy way to do it, you must edit a number of files. Working from memory, but here goes:

  1. Remove the chat icon from the top bar.
  2. Remove signalr from Startup.cs
  3. Remove signalr and chat javascript files so that your js does not try to make a signalr request.
  4. Remove any other .cs files that mention chat. This one is optional.

Hello, I was looking in Azure to see what queries were bottlenecks and I noticed that this query was running too frequently. It ran 35089 queries in the past 24 hours, which is around 24 per minute. I modified the BackgroundJobManager class and set the JobPollPeriod to one hour, but it didn't seem to have an effect. Any ideas?

(@__Now_0 datetime2(7),@__p_1 int)SELECT TOP(@__p_1) [a].[Id], [a].[CreationTime], [a].[CreatorUserId], [a].[IsAbandoned], [a].[JobArgs], [a].[JobType], [a].[LastTryTime], [a].[NextTryTime], [a].[Priority], [a].[TryCount] FROM [AbpBackgroundJobs] AS [a] WHERE ([a].[IsAbandoned] <> CAST(1 AS bit)) AND ([a].[NextTryTime] <= @__Now_0) ORDER BY [a].[Priority] DESC, [a].[TryCount], [a].[NextTryTime]

Question

Hello, I was looking at my Azure SQL usage and this query popped up as very frequent. In the past 24 hours it has been executed 21295 times. Any ideas where it's coming from and why it's so frequent?

(@__ef_filter__p_3 bit,@__ef_filter__p_4 bit,@__ef_filter__CurrentTenantId_5 int,@__ef_filter__p_6 bit,@__ef_filter__p_7 bit,@__ef_filter__CurrentTenantId_8 int,@__ef_filter__p_0 bit,@__ef_filter__p_1 bit,@__ef_filter__CurrentTenantId_2 int,@__user_Id_0 bigint)SELECT [t0].[Name] FROM [AbpUserOrganizationUnits] AS [a] INNER JOIN ( SELECT [a0].[Id], [a0].[CreationTime], [a0].[CreatorUserId], [a0].[IsDeleted], [a0].[OrganizationUnitId], [a0].[RoleId], [a0].[TenantId] FROM [AbpOrganizationUnitRoles] AS [a0] WHERE ((@__ef_filter__p_3 = CAST(1 AS bit)) OR ([a0].[IsDeleted] <> CAST(1 AS bit))) AND ((@__ef_filter__p_4 = CAST(1 AS bit)) OR ((([a0].[TenantId] = @__ef_filter__CurrentTenantId_5) AND ([a0].[TenantId] IS NOT NULL AND @__ef_filter__CurrentTenantId_5 IS NOT NULL)) OR ([a0].[TenantId] IS NULL AND @__ef_filter__CurrentTenantId_5 IS NULL))) ) AS [t] ON [a].[OrganizationUnitId] = [t].[OrganizationUnitId] INNER JOIN ( SELECT [a1].[Id], [a1].[ConcurrencyStamp], [a1].[CreationTime], [a1].[CreatorUserId], [a1].[DeleterUserId], [a1].[DeletionTime], [a1].[DisplayName], [a1].[IsDefault], [a1].[IsDeleted], [a1].[IsStatic], [a1].[LastModificationTime], [a1].[LastModifierUserId], [a1].[Name], [a1].[NormalizedName], [a1].[TenantId] FROM [AbpRoles] AS [a1] WHERE ((@__ef_filter__p_6 = CAST(1 AS bit)) OR ([a1].[IsDeleted] <> CAST(1 AS bit))) AND ((@__ef_filter__p_7 = CAST(1 AS bit)) OR ((([a1].[TenantId] = @__ef_filter__CurrentTenantId_8) AND ([a1].[TenantId] IS NOT NULL AND @__ef_filter__CurrentTenantId_8 IS NOT NULL)) OR ([a1].[TenantId] IS NULL AND @__ef_filter__CurrentTenantId_8 IS NULL))) ) AS [t0] ON [t].[RoleId] = [t0].[Id] WHERE (((@__ef_filter__p_0 = CAST(1 AS bit)) OR ([a].[IsDeleted] <> CAST(1 AS bit))) AND ((@__ef_filter__p_1 = CAST(1 AS bit)) OR ((([a].[TenantId] = @__ef_filter__CurrentTenantId_2) AND ([a].[TenantId] IS NOT NULL AND @__ef_filter__CurrentTenantId_2 IS NOT NULL)) OR ([a].[TenantId] IS NULL AND @__ef_filter__CurrentTenantId_2 IS NULL)))) AND (([a].[UserId] = @__user_Id_0) AND @__user_Id_0 IS NOT NULL)

It would be helpful to make the text of the dropdown actions in the DataTable dynamic. I modified the code and figured you can maybe include it in a future release.

In datatables.record-action.js - createDropdownItem function: if (fieldItem.text) { var text = ''; if (typeof fieldItem.text === 'function') { text = fieldItem.text({ record: record }); } else { text = fieldItem.text; } $a.html(text); }

Thank you!

I see it. Interesting... That means it has something to do with my setup. I may have accidentally removed something. I will check. Thank you!

Showing 21 to 30 of 39 entries