pega-helm-charts
pega-helm-charts copied to clipboard
Allow a jdbc dictionary in each tier, in my case for connection pool tuning
Is your feature request related to a problem? Please describe. I understand that I can inject my own Tomcat context.xml.tmpl, but in my case I think that is a too heavy-handed approach for me when all I want to do is to control maxTotal and maxIdle in the jdbc/PegaRULES resource.
Describe the solution you'd like Allow me to specify a jdbc dictionary per tier (that the helm chart use to set the proper environment values needed when context.xml.tmpl is instantiated.)
Please see the example below:
global:
...
tier:
- name "web"
...
jdbc:
maxTotal: 26
maxIdle: 26
- name "stream"
...
jdbc:
maxTotal: 12
maxIdle: 12
A POD in the stream tier would then in the end get a context.xml like this:
<Resource name="jdbc/PegaRULES"
...
maxTotal="12"
maxIdle="12"
...
/>
And a POD in the web tier would get get a context.xml like this:
<Resource name="jdbc/PegaRULES"
...
maxTotal="26"
maxIdle="26"
...
/>
Describe alternatives you've considered Injecting a complete context.xml.tmpl per tier and only change the two above values, but that would make the values files harder to understand since a lot of irrelevant, version dependant and duplicated config would end up there.
Additional context A web facing tier may need a lot more database connections than a stream or batch tier in order to achieve maximum performance.
@je-munobia these values can be specified as environment variables in custom tier configurations and will be injected into the context.xml.tmpl. Does this address your usecase?
@je-munobia Are you able to follow the above suggestion? Can you update us the latest status?