Skip to content

Commit 28e105d

Browse files
committed
Merge branch 'develop' into owls-70947
2 parents 21e7bd0 + a2cf6da commit 28e105d

File tree

6 files changed

+29
-3
lines changed

6 files changed

+29
-3
lines changed

kubernetes/charts/weblogic-operator/templates/_operator-dep.tpl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@ spec:
4444
- name: "MOCK_WLS"
4545
value: "true"
4646
{{- end }}
47+
resources:
48+
requests:
49+
cpu: "100m"
50+
memory: "512Mi"
4751
volumeMounts:
4852
- name: "weblogic-operator-cm-volume"
4953
mountPath: "/operator/config"

kubernetes/src/test/java/oracle/kubernetes/operator/create/CreateOperatorGeneratedFilesTestBase.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,13 @@
4444
import static org.hamcrest.MatcherAssert.assertThat;
4545
import static org.junit.Assert.fail;
4646

47+
import io.kubernetes.client.custom.Quantity;
4748
import io.kubernetes.client.models.ExtensionsV1beta1Deployment;
4849
import io.kubernetes.client.models.V1ClusterRole;
4950
import io.kubernetes.client.models.V1ClusterRoleBinding;
5051
import io.kubernetes.client.models.V1ConfigMap;
5152
import io.kubernetes.client.models.V1Namespace;
53+
import io.kubernetes.client.models.V1ResourceRequirements;
5254
import io.kubernetes.client.models.V1Role;
5355
import io.kubernetes.client.models.V1RoleBinding;
5456
import io.kubernetes.client.models.V1Secret;
@@ -210,6 +212,11 @@ protected ExtensionsV1beta1Deployment getExpectedWeblogicOperatorDeployment() {
210212
newEnvVar()
211213
.name("JAVA_LOGGING_LEVEL")
212214
.value(getInputs().getJavaLoggingLevel()))
215+
.resources(
216+
new V1ResourceRequirements()
217+
.putRequestsItem("cpu", Quantity.fromString("100m"))
218+
.putRequestsItem(
219+
"memory", Quantity.fromString("512Mi")))
213220
.addVolumeMountsItem(
214221
newVolumeMount()
215222
.name("weblogic-operator-cm-volume")

operator/src/main/java/oracle/kubernetes/operator/helpers/ClientPool.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,13 @@ private ApiClient getApiClient() {
8585
return client;
8686
}
8787

88+
@Override
89+
protected ApiClient onRecycle(ApiClient instance) {
90+
// Work around async processing creating, but not cleaning-up network interceptors
91+
instance.getHttpClient().networkInterceptors().clear();
92+
return super.onRecycle(instance);
93+
}
94+
8895
private static class DefaultClientFactory implements ClientFactory {
8996
private final AtomicBoolean first = new AtomicBoolean(true);
9097

operator/src/main/java/oracle/kubernetes/operator/helpers/Pool.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,16 @@ protected Queue<T> getQueue() {
4646
* @param instance Pool object to recycle
4747
*/
4848
public final void recycle(T instance) {
49-
getQueue().offer(instance);
49+
getQueue().offer(onRecycle(instance));
5050
if (LOGGER.isFinerEnabled()) {
5151
LOGGER.finer("Recycling instance to pool, instances now in pool: " + getQueue().size());
5252
}
5353
}
5454

55+
protected T onRecycle(T instance) {
56+
return instance;
57+
}
58+
5559
/**
5660
* Creates a new instance of object. This method is used when someone wants to {@link #take()
5761
* take} an object from an empty pool. Also note that multiple threads may call this method

operator/src/main/resources/scripts/introspectDomain.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,6 @@ def open(self):
106106

107107
self.DOMAIN_UID = self.getEnv('DOMAIN_UID')
108108
self.DOMAIN_HOME = self.getEnv('DOMAIN_HOME')
109-
self.DOMAIN_NAME = self.getEnv('DOMAIN_NAME')
110109
self.LOG_HOME = self.getEnv('LOG_HOME')
111110
self.CREDENTIALS_SECRET_NAME = self.getEnv('CREDENTIALS_SECRET_NAME')
112111

@@ -155,6 +154,7 @@ def open(self):
155154
trace("About to load domain from "+self.getDomainHome())
156155
readDomain(self.getDomainHome())
157156
self.domain = cmo
157+
self.DOMAIN_NAME = self.getDomain().getName()
158158

159159
def close(self):
160160
closeDomain()
@@ -787,6 +787,7 @@ def addSitCfgXml(self):
787787
self.writeln("<?xml version='1.0' encoding='UTF-8'?>")
788788
self.writeln("<d:domain xmlns:d=\"http://xmlns.oracle.com/weblogic/domain\" xmlns:f=\"http://xmlns.oracle.com/weblogic/domain-fragment\" xmlns:s=\"http://xmlns.oracle.com/weblogic/situational-config\">")
789789
self.indent()
790+
self.writeln("<s:expiration> 2099-07-16T19:20+01:00 </s:expiration>")
790791
self.writeln("<d:name>" + self.env.DOMAIN_NAME + "</d:name>")
791792
self.customizeNodeManagerCreds()
792793
self.customizeDomainLogPath()

src/scripts/operator.sh

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,10 @@ cp /operator/logstash.conf /logs/logstash.conf
6464
# assumption is that we have mounted a volume on /logs which is also visible to
6565
# the logstash container/pod.
6666

67+
# Container memory optimizaton flags
68+
HEAP="-XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -XX:MaxRAMFraction=1 -XshowSettings:vm"
69+
6770
# Start operator
68-
java $MOCKING_WLS $DEBUG $LOGGING -jar /operator/weblogic-kubernetes-operator.jar &
71+
java $HEAP $MOCKING_WLS $DEBUG $LOGGING -jar /operator/weblogic-kubernetes-operator.jar &
6972
PID=$!
7073
wait $PID

0 commit comments

Comments
 (0)