Expand my Community achievements bar.

Guidelines for the Responsible Use of Generative AI in the Experience Cloud Community.
SOLVED

Uploading huge files to publisher and reverse replicating to author and running workflows in author

Avatar

Level 2

I have a requirement to upload the files in publisher and reverse replicate to author and forward replicate to another publisher. After reverse replicating, I need to create a project in AEM author and move the reverse replicated assets to a project-specific location. So I have a custom launcher to call my workflow class(which will create a project and copy the assets to the given location and delete them).

There is a problem with this, I'm trying to avoid the race condition. The project is created and moves the asset whatever available when the launcher triggers but all the assets haven't reverse replicated yet. Is there a way to wait until the complete reverse replication is done or any condition to write at the launcher level or some job consumer something. I have a launcher at /content/vendor. I have enough info to create a project after creating data node. But I need all the files to be moved to a project-specific location. Appreciate your help. Thanks. Attaching the structure of the files as a screenshot

1458637_pastedImage_0.png

1 Accepted Solution

Avatar

Correct answer by
Employee Advisor

Right now I don't see a huge difference between end-users uploading to the publish instance and end-users uploading to authoring instance directly. In both cases they are authenticated and are uploading data to an AEM instance. If you call this author or publish doesn't matter from a security point of view.

I would recommend to let them upload directly on author;  and in that case you get around of this reverse replication topic, which makes many things much easier.

Jörg

View solution in original post

3 Replies

Avatar

Employee Advisor

Hi,

the process you want to build looks not very suitable for AEM. On top of that, reverse replication was never really utilized in the product itself (probably for scalability and stability reasons). I would try to design this differently. What are you requirements and why can't you do the upload on authoring directly?

To your question: Replication actions are atomic and independent of each other. There is no way to say "this is the first of 10 replication actions". I see these ways to make it work:

* Replicate a marker (it should be somehow you can detect easily) as last item in that sequence.

* Or embedd all items into a content-package, which you can replicate at once.

But to repeat myself: That approach does not follow best practices. If you can share your requirements we can try to come up with a better solution.

Jörg

Avatar

Level 2

Our client doesn't have any other storage systems. The reason to be on the publisher is our client has external users to upload the large assets and I don't think we should let external users access author system.

The actual requirement is that we are trying to build a vendor portal where end users can fill the form and upload the assets. After reverse replicating that content to author instance we have multiple workflow processes to go through to use the asset. So anytime external users can login to publish and see the history of their uploads.

I figured there's a limit on reverse replication to 2Gb, so we are restricting each file to that limit but the launcher doesn't wait for the whole content to be reverse replicated.

Any thoughts on how to address the issue and better solution for the whole requirement is appreciated.

Avatar

Correct answer by
Employee Advisor

Right now I don't see a huge difference between end-users uploading to the publish instance and end-users uploading to authoring instance directly. In both cases they are authenticated and are uploading data to an AEM instance. If you call this author or publish doesn't matter from a security point of view.

I would recommend to let them upload directly on author;  and in that case you get around of this reverse replication topic, which makes many things much easier.

Jörg