Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW

Duplication from HUB with Custom Load Balancing Rules under the same Virtual Proxy

No ratings
cancel
Showing results for 
Search instead for 
Did you mean: 
NadiaB
Support
Support

Duplication from HUB with Custom Load Balancing Rules under the same Virtual Proxy

Last Update:

May 12, 2022 9:13:40 AM

Updated By:

NadiaB

Created date:

Oct 7, 2021 10:44:55 AM

When setting up a virtual proxy load balancing to multiple engines, it is possible to set up load balancing rules to specify which set of apps will be available on which engine(s).

In this scenario, it is desired to have all apps available in the Hub accessed through the Virtual proxy, but load balancing to directed to one node for Published Apps, and another node for Unpublished apps.

From end-user perspective, everything works fine (List App, Open App,…) until it is attempted to duplicate an application from the hub which does not work.

This will also affect ODAG applications where the Details app is Published. Error is shown "Failed to copy the app"

 

Environment

 

Resolution

 

Use different Proxies.

The underlying issue is that when the “Copy” of the App is being made, the copy would be unpublished, ergo the node that is making the Copy cannot see it, so the process fails.

It is suggested to use different virtual proxies instead of only one to load balance nodes for Published and Non published apps.

Internal Investigation ID(s) :

JIRA ID SHEND-631

Labels (1)
Comments
msvanfeldt
Partner - Contributor II
Partner - Contributor II

Is there a solution to this problem?

Sonja_Bauernfeind
Digital Support
Digital Support

Hello @msvanfeldt 

This is currently under investigation by RnD.

Keep an eye on the Release notes for ID SHEND-631. We do not currently have an ETA.

All the best,
Sonja 

 

msvanfeldt
Partner - Contributor II
Partner - Contributor II

OK. I'm trying to set up an ODAG solution in a multinode environment. Is there a workaround for this problem?

Sonja_Bauernfeind
Digital Support
Digital Support

Hello @msvanfeldt 

I would recommend logging a ticket to see if our Support Engineers are able to provide you with guidance on how to work around this issue.

All the best,
Sonja 

msvanfeldt
Partner - Contributor II
Partner - Contributor II

I solved this by creating a custom property connected to Nodes and Apps.
Custom Property: ODAG
Value: YES

Then I created a load balancing Rule called ODAG:
Resource filter: App_*
Conditions: ((node.@ODAG=resource.@ODAG))

Then I configure the Nodes I want to use for ODAG and the published detailsapp with the value YES.

pauljohansson
Creator III
Creator III

@msvanfeldt 

I don't manage with your suggestion, I still get "failed to copy the app" Is there something else you did to make it work?

thanks in advance,

br

Paul

dpolini
Partner - Contributor II
Partner - Contributor II

Hi @pauljohansson ,

I faced a similar situation in the past and what @msvanfeldt  suggested didn't work for me either.

The only way I found to make this work was to allow for the template app to be balanced everywhere.

Therefore, assigning the custom property @ODAG=YES on the app and then creating a balancing rule of the type:

Resource filter: App_*
Conditions: ((resource.@ODAG="YES"))

allows for the app creation.

The downside of this is that the generated app will be balanced on all nodes as well (ODAG apps inherit CPs) and I understand that might be problematic.

I don't know if the following could be suitable for you, but in our case a further workaround limited the issue. We established, as a platform policy, that ODAG apps must be published. We created some streams dedicated to this that basically work as a "fake" work area: in those streams users could see only apps they own. Then we added to the previous load balancing rule something like:

and resource.published="false"

This means that you can manage the balancing of the app once it is generated according to your needs and allowing for the app to be balanced everywhere only while it is generated.

I hope this helps.

Best,

Davide

pauljohansson
Creator III
Creator III

Hej @dpolini 

 

Thanks for a quick reply. 

 

1 I've created a Custom Property on the template app (ODAG="YES")

2 I've create a load balance rule ((resource.@ODAG="YES"))

 

My rule seems valid:

pauljohansson_0-1651508079061.png

 

However, I still get the same problem,  "failed to copy the app", when using ODAG from any of the front-end Nodes. Any idea?

 

br

Paul

I

dpolini
Partner - Contributor II
Partner - Contributor II

Hi @pauljohansson ,

I am sorry it didn't work but I fail to understand why it doesn't. The only thing I will say, but it's wishful thinking, is that it happened to me that rules involving custom property had a little time buffer before starting working properly. 

If it keeps not working I would suggest opening a support case.

Best,

Davide

msvanfeldt
Partner - Contributor II
Partner - Contributor II

Here is an update of how I solved it.

The problem is that a published template-app is copied. The copy isn't published but resides in My Work. After the reload the new copy will be published again.

So my rule looks like this:

Resource filter: App_*

Conditions: ((node.@ODAG=resource.@ODAG)
and
resource.stream.Empty()
)

Version history
Last update:
‎2022-05-12 09:13 AM
Updated by: