Starts in:
2 DAYS
0 HR
17 MIN
37 SEC
Starts in:
2 D
0 H
17 M
37 S

Activities of "mariovh"

  • ABP Framework version: v8.1.3
  • UI Type: Blazor WASM
  • Database System: EF Core (SQL Server)
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes

Hi, I'm using Azure Distributed Event Bus with Inbox/Outbox patterns. One Pre-Requirement is Distributed Locking. Using Redis is working fine for us, but production costs in Azure are very high, due to the number of applications and environments we have, in which we would need a Azure Cache for Redis per application and environment. Is there an alternative or can a different solution be implemented to avoid using Redis?

Thank you.

  • ABP Framework version: v8.1.3
  • UI Type: Blazor WASM
  • Database System: EF Core (SQL Server)

Hi, I'm using AzureDistributedEventBus with Inbox/Outbox pattern and Hybrid Database Architecture, where some tenants share a single database while some tenants may have their own databases. I don't know how is the correct way to configure Entity Framework Module Inbox/Outbox patter with this Db architecture and how it works internally to avoid conficts and misconfiguration. Is 1 worker per database, 1 for database shared for all tenant, and 1 extra for each isolated tenant database? Or 1 worker per application? How is the correct way to implement this pattern with this database architecture?

Thank you

  • ABP Framework version: v8.1.3
  • UI Type: Blazor WASM
  • Database System: EF Core (SQL Server)
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes

Hello, I'm using AzureDistributedEventBus with inbox patter, for incoming Azure Service Bus Messages. While creating or updating an aggregate in a handler/synchronizer there's no entries created in audit tables AbpEntityChanges and AbpEntityPropertyChanges. How can I leave a trace in those tables when I insert or update the aggregate with a repository, taking into account that the change does not come from a request to the API but from a message received through Azure Service Bus?

Thank you

  • ABP Framework version: v8.1.3
  • UI Type: Blazor WASM
  • Database System: EF Core (SQL Server)
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes

Hi Im working with Distributed Entity Eventy Bus and there are some events auto generated like, UserEto,IdentityRoleEto,IdentityUserEmailChangedEto are configured to automatically publish the events. I want to disable all configured events that automatically publish events, in order to publish manually with AddDistributedEvent(). I tried with module configuration but it doesnt work Configure<AbpDistributedEntityEventOptions>(options => { options.AutoEventSelectors.Clear(); });

Thank you

ABP Framework version: v7.4.4 UI Type: Blazor WASM Database System: EF Core (SQL Server)

Hi, Im using Abp AzureDistributedEventBus, with outbox and inbox pattern, and i need to update IncomingEventInfo ExtraProperties when I MarkAsProcessedAsync. Here is my code:

internal async Task IncomingEventInfoMarkAsProcessed(IncomingEventInfo incomingEvent, InboxConfig inboxConfig)
{
    if (AbpDistributedEventBusOptions.Inboxes.Count <= 0)
    {
        return;
    }
    using var scope = ServiceScopeFactory.CreateScope();
    var eventInbox = (IEventInbox)scope.ServiceProvider.GetRequiredService(inboxConfig.ImplementationType);

    if (incomingEvent.MessageId.IsNullOrEmpty())
    {
        return;
    }

    if (!Guid.TryParse(incomingEvent.MessageId, out var messageId))
    {
        return;
    }

    if (!await eventInbox.ExistsByMessageIdAsync(incomingEvent.MessageId))
    {
        return;
    }
    incomingEvent.ExtraProperties.Add("ERROR COUNT", 1);
    // UPDATE DE EXTRA PROPERTIES
    await eventInbox.MarkAsProcessedAsync(messageId);
}
  • ABP Framework version: v7.4.4
  • UI Type: Blazor WASM
  • Database System: EF Core (SQL Server)

Hi, Im using distributed event bus with outbox pattern and Azure service bus provider. I have 3 requirements that I'm struggling to implement with AzureDistributedEventBus.

The first is the need to publish to different topics based on the event name of the Eto:

[EventName("projects")] public class ProjectEto

[EventName("campaigns")] public class CampaignEto

The second is whether there's a way to override part of the message publishing with AzureDistributedEventBus to achieve the following: With the default implementation of the outbox pattern, when publishing the message to Azure Service Bus, override the message publishing to choose which topic the message corresponds to. Additionally, be able to, if the topic or subscription don't exist, create them programmatically using ServiceBusAdministrationClient.CreateTopicAsync from Azure.Messaging.ServiceBus.Administration.

The last one, because is posible to use outbox pattern with no Sql database/context, so my last question is if i can configure the pattern to not delete the rows in AbpEventOutbox table after publishing on azure and mark as published instead of delete.

Thank you!

  • ABP Framework version: v7.0.0
  • UI Type:Blazor WASM
  • Database System: EF Core (SQL Server)
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes/no
  • Exception message and full stack trace:
  • Steps to reproduce the issue:

Hello,

I'm using AbpBackgroundJobs for tasks that mainly involve generating a PDF certificate, attaching it to an email, and sending it via email through Azure Communication Services in bulk. Around 2000 jobs are queued on average in this operation.

To avoid exceeding the limits of Exchange 365 in email sending (30 emails per minute), I'm queuing the jobs with a 15-second delay between each consecutive one.

During the execution, I've noticed that the 15-second delay isn't always respected, and I've also observed that the execution order of the jobs doesn't strictly follow the NextTryTime. What logic does the polling on the BackgroundJobs table use to select the job to execute?

Here's the scenario: there are 10 jobs with NextTryTime before the current date, and then there are others with NextTryTime after the current date. In what order will they be executed?

If it's not possible to enforce the delay when enqueuing, as job execution times are sometimes less than the planned delay, is it possible to introduce a delay when the job is selected for execution to avoid mailbox saturation?

Finally, with the aim of scaling the application, as it's multi-tenant, is there a possibility for each tenant to have its dedicated background jobs thread independent of other tenants?

Thank you and regards,

  • ABP Framework version: v7.0.0
  • UI Type:Blazor WASM
  • Database System: EF Core (SQL Server)
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes
  • Exception message and full stack trace:
  • Steps to reproduce the issue:

Hi, I need to restrict the acces in each tenant to a setting value in settings management. Im trying to make a SettingComponentGroup, only visible for a settings admin user, wich could be a role created for this purpose. Following your example:

`

  public class BookStoreSettingPageContributor : ISettingPageContributor{
public Task ConfigureAsync(SettingPageCreationContext context)
{
    context.Groups.Add(
        new SettingPageGroup(
            "Volo.Abp.MySettingGroup",
            "MySettingGroup",
            typeof(MySettingGroupViewComponent),
            order : 1
        )
    );  return Task.CompletedTask;
}

public Task<bool> CheckPermissionsAsync(SettingPageCreationContext context)
{
    // You can check the permissions here
    return Task.FromResult(true);
}

} `

How i can in CheckPermissionsAsync, make "MySettingGroup" only visible for an specific role? Wich is the correct way to do it?

Thank you

  • ABP Framework version: v6.0.0
  • UI Type:Blazor WASM
  • Database System: EF Core (SQL Server)

Hello, im using a AsyncBackgroundJob that need to query data from repositories and store after some operations that include generate a pdf document and send via email. The fact is that injected repositories are returning empty data, watching the context Tenant is null and User is null:

The job is enqueued in an appservice method. If i use the repository in the appservices that enqueues the job, gets and store data correctly. But if the same IRepository type is injected in the backgroundjob doesnt get the data probably because tenant and user are null.

What is the correct way to use an AsyncBackgroundJob, that do some queries and store data via IRepository in a multitenant app?

Thank you!

  • ABP Framework version: v6.0.0
  • UI Type: Blazor WASM
  • Database System: EF Core (SQL Server)
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes/no
  • Exception message and full stack trace:
  • Steps to reproduce the issue:

Hello, i have the scenario where i want to send a message to azure service bus topic and after that set the entity as processed, wich is update a property as true. I want to do it transactional in app service method. So if database update throws exception, message should not be published in azure service bus preserving events integrity.

Wrapping in Transaction Scope throws this exception when updating in database:

I can't update because IRepository update is transactional, so message is not published in topic because is wrapped in the same transaction scope as database update, this is correct.

If I configure the module with:

making the update operation non transactional, both operations works fine, but is not the behavior i want because my database operations to be not transactional.

My question is, that if I remove transaction scope and AbpUnitOfWorkDefaultOptions transaction behavior is Enabled by default, asuming that in every appservice method begins a transactional UOW, when the update operation throws an exception, the azure client send message is publishing the message in the topic wich is wrong behavior. Both operations, send message and then update entity are in the same appservice method, same UOW, same Transaction Scope, so if an exception is thrown, a rollback of all operations should be made, and this is not the case.

I dont know what is the correct way to implement a pattern like this using Appservices UOW, and making transactional both operations, send message to service bus and update an entity via generic repository.

Thanks!

Showing 1 to 10 of 11 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on November 20, 2024, 13:06