Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
I'm experimenting with the new preload possibility in Qlik Sense Enterprise on Windows (version May 2024), and I'm a bit confused.
Is it correct that if I have let's say two nodes where an app that I want to preload can be accessed, I need to create two tasks and explicitly dedicate each of them to one specific node? Because it seems that if I have just one preload task without specifying what server/node that is to perform that task, the preload job is sent to an available node and gets loaded into memory on that server only.
If the above is correct, I have an issue with this. I have an app that's allowed (through security rules) to reload on just one specific reload node, but it can be accessed by users in frontend on two nodes. If I create preload tasks for each of the nodes, those tasks fail due to the security rule that says the app can't reload on those servers.
It seems that a node can't preload an app, if it isn't allowed to also reload that same app. And in combination with my belief that I need to have one preload task per node where I want the app to be preloaded, this seems like a bug, or at least logical glitch, to me. I can't preload the app on all nodes, because the reload can't happen on them. I don't believe it should be that way.
Hi Henrik, maybe this could be helpful to you.
https://adminplaybook.qlik-poc.com/docs/asset_management/apps/review_pinning_load_balancing.html
@Alan_Slaughter Thanks, but I don't believe that is what I am looking for. That article handles load balancing and pinning applications to be consumed on specific nodes. In my case I have an application where reload is pinned to a specific node, but end users consuming that app is load balanced to any of the nodes/engines in the cluster.
My issue is that preload seem to be only working on the node that the app can reload on. But it seems to me that I have to preload the app on each node where the app is to be consumed, and for that I need three different preloadtasks. But the tasks fail on the nodes that aren't allowed to reload the app.
Isn't it true that preloading has to be done through one separate preload task for each node where the app will be used?
Let's say, in a simplified scenario, that I have one node that only performs reloads, and one node that handles all app usage (but no reloads). There's no point in preloading the app on the reload node, but it's not possible to preload the app on the node where users are using the app since that node isn't allowed to reload the app. Preload fails because reload is not allowed.
That logic is problematic in my opinion. Or am I missing something, maybe I misunderstand the logic?
I totally agree with you, @henrikalmen! We have the same situation that you are describing above: a consumption-only node, with no Scheduler enabled, where we need to preload a couple of apps. How do we preload the apps in that node?
Cheers,
++José
Hi Henrik, maybe this might help:
Thanks for responding @Alan_Slaughter, but unfortunately it doesn't. Naturally I have read the manual pages already. The only thing that remotely touches on the issue that I, and now @diagonjope, have is this part:
That text is somewhat confusing. Nowhere in the manual, as far as I am aware, is there anything that mentions preloading in a multi-node setup. The above text says that if no node is specified, any available node could be chosen. But it seems that when executing a preload task, the app only gets loaded into memory on the particular node that the task was executed on. If there are two nodes, only one of them will have a preloaded app - and a user could be directed to the node where the app is not preloaded. It's not very useful.
That's why I figure that I need to create one preload task for each node where an app may be consumed. And that's where my main problem arises; If a consumption node isn't allowed to perform reloads (n.b. reloads, I'm not talking about preloads here) it automatically is forbidden to perform preloads as well!
So in a multi node setup, with one node doing only all the reloads, and one node handling all the users consuming apps, the preload feature can't be used.
This seems to me like a bug. If it isn't, I must have misunderstood something in how it actually works.
I would recommend opening a case with support.