[
https://issues.apache.org/jira/browse/CAMEL-15519?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrea Cosentino reassigned CAMEL-15519:
----------------------------------------
Assignee: Andrea Cosentino
> kubernetes-pods consumer raise a No type converter available exception
> ----------------------------------------------------------------------
>
> Key: CAMEL-15519
> URL: https://issues.apache.org/jira/browse/CAMEL-15519
> Project: Camel
> Issue Type: Wish
> Components: camel-kubernetes
> Affects Versions: 3.4.2
> Reporter: Emmerson
> Assignee: Andrea Cosentino
> Priority: Minor
>
> Hello,
> I am testing kubernetes-pods consumer and in the first test it works fine,
> then I run a kubernetes job (this create internally a Pod) and I get a "_No
> type converter available_" exception in the console.
>
> The pod consumer source code is here:
> [https://github.com/Emmerson-Miranda/camel/blob/master/camel3-cdi/cdi-k8s-pocs/src/main/java/edu/emmerson/camel/k8s/jobs/camel_k8s_jobs/KubernetesRouteConsumerPods.java]
>
> The pod creation source code is here
> [https://github.com/Emmerson-Miranda/camel/blob/master/camel3-cdi/cdi-k8s-pocs/src/main/java/edu/emmerson/camel/k8s/jobs/camel_k8s_jobs/KubernetesCreateJob.java]
>
>
> *Bellow the stacktrace*
> [ https://192.168.64.3:8443/...] KubernetesRouteConsumerPods INFO KEEPING pod
> name: job-1599734811571-rls7l
> [ XNIO-1 task-1] UndertowConsumer WARN Caused by:
> [org.apache.camel.NoTypeConversionAvailableException - No type converter
> available to convert from type: io.fabric8.kubernetes.api.model.batch.Job to
> the required type: java.nio.ByteBuffer with value Job(apiVersion=batch/v1,
> kind=Job, metadata=ObjectMeta(annotations=null, clusterName=null,
> creationTimestamp=2020-09-10T10:46:51Z, deletionGracePeriodSeconds=null,
> deletionTimestamp=null, finalizers=[], generateName=null, generation=null,
> labels=\{app=jobFromCamelApp, jobLabelKey1=value1, jobLabelKey2=value2},
> managedFields=[ManagedFieldsEntry(apiVersion=batch/v1, fieldsType=FieldsV1,
> fieldsV1=FieldsV1(additionalProperties=\{f:metadata={f:labels={.={},
> f:app={}, f:jobLabelKey1={}, f:jobLabelKey2={}}},
> f:spec=\{f:activeDeadlineSeconds={}, f:backoffLimit={}, f:completions={},
> f:parallelism={}, f:template=\{f:metadata={f:annotations={.={},
> f:jobMetadataAnnotation1={}}, f:labels=\{.={}, f:app={}, f:orderId={},
> f:podLabelKey1={}, f:podLabelKey2={}}},
> f:spec=\{f:containers={k:{"name":"pi"}=\{.={}, f:command={}, f:image={},
> f:imagePullPolicy={}, f:name={}, f:resources={}, f:terminationMessagePath={},
> f:terminationMessagePolicy={}}}, f:dnsPolicy={}, f:restartPolicy={},
> f:schedulerName={}, f:securityContext={},
> f:terminationGracePeriodSeconds={}}}, f:ttlSecondsAfterFinished={}}}),
> manager=okhttp, operation=Update, time=2020-09-10T10:46:51Z,
> additionalProperties={})], name=job-1599734811571, namespace=default,
> ownerReferences=[], resourceVersion=1688691,
> selfLink=/apis/batch/v1/namespaces/default/jobs/job-1599734811571,
> uid=df5c8ed7-1436-4c57-854a-5703fa3baed8, additionalProperties={}),
> spec=JobSpec(activeDeadlineSeconds=7200, backoffLimit=6, completions=1,
> manualSelector=null, parallelism=1,
> selector=LabelSelector(matchExpressions=[],
> matchLabels=\{controller-uid=df5c8ed7-1436-4c57-854a-5703fa3baed8},
> additionalProperties={}),
> template=PodTemplateSpec(metadata=ObjectMeta(annotations=\{jobMetadataAnnotation1=random
> value}, clusterName=null, creationTimestamp=null,
> deletionGracePeriodSeconds=null, deletionTimestamp=null, finalizers=[],
> generateName=null, generation=null, labels=\{app=podFromCamelApp,
> controller-uid=df5c8ed7-1436-4c57-854a-5703fa3baed8,
> job-name=job-1599734811571, orderId=54702d2c-554b-4fa8-91ef-9e4e7abfe055,
> podLabelKey1=value1, podLabelKey2=value2}, managedFields=[], name=null,
> namespace=null, ownerReferences=[], resourceVersion=null, selfLink=null,
> uid=null, additionalProperties={}), spec=PodSpec(activeDeadlineSeconds=null,
> affinity=null, automountServiceAccountToken=null,
> containers=[Container(args=[], command=[echo, Job created from Apache Camel
> code at Thu Sep 10 11:46:51 BST 2020], env=[], envFrom=[], image=perl,
> imagePullPolicy=Always, lifecycle=null, livenessProbe=null, name=pi,
> ports=[], readinessProbe=null, resources=ResourceRequirements(limits=null,
> requests=null, additionalProperties={}), securityContext=null,
> startupProbe=null, stdin=null, stdinOnce=null,
> terminationMessagePath=/dev/termination-log, terminationMessagePolicy=File,
> tty=null, volumeDevices=[], volumeMounts=[], workingDir=null,
> additionalProperties={})], dnsConfig=null, dnsPolicy=ClusterFirst,
> enableServiceLinks=null, ephemeralContainers=[], hostAliases=[],
> hostIPC=null, hostNetwork=null, hostPID=null, hostname=null,
> imagePullSecrets=[], initContainers=[], nodeName=null, nodeSelector=null,
> overhead=null, preemptionPolicy=null, priority=null, priorityClassName=null,
> readinessGates=[], restartPolicy=OnFailure, runtimeClassName=null,
> schedulerName=default-scheduler,
> securityContext=PodSecurityContext(fsGroup=null, fsGroupChangePolicy=null,
> runAsGroup=null, runAsNonRoot=null, runAsUser=null, seLinuxOptions=null,
> supplementalGroups=[], sysctls=[], windowsOptions=null,
> additionalProperties={}), serviceAccount=null, serviceAccountName=null,
> shareProcessNamespace=null, subdomain=null, terminationGracePeriodSeconds=30,
> tolerations=[], topologySpreadConstraints=[], volumes=[],
> additionalProperties={}), additionalProperties={}),
> ttlSecondsAfterFinished=null, additionalProperties={}),
> status=JobStatus(active=null, completionTime=null, conditions=[],
> failed=null, startTime=null, succeeded=null, additionalProperties={}),
> additionalProperties={})]
> org.apache.camel.NoTypeConversionAvailableException: No type converter
> available to convert from type: io.fabric8.kubernetes.api.model.batch.Job to
> the required type: java.nio.ByteBuffer with value Job(apiVersion=batch/v1,
> kind=Job, metadata=ObjectMeta(annotations=null, clusterName=null,
> creationTimestamp=2020-09-10T10:46:51Z, deletionGracePeriodSeconds=null,
> deletionTimestamp=null, finalizers=[], generateName=null, generation=null,
> labels=\{app=jobFromCamelApp, jobLabelKey1=value1, jobLabelKey2=value2},
> managedFields=[ManagedFieldsEntry(apiVersion=batch/v1, fieldsType=FieldsV1,
> fieldsV1=FieldsV1(additionalProperties=\{f:metadata={f:labels={.={},
> f:app={}, f:jobLabelKey1={}, f:jobLabelKey2={}}},
> f:spec=\{f:activeDeadlineSeconds={}, f:backoffLimit={}, f:completions={},
> f:parallelism={}, f:template=\{f:metadata={f:annotations={.={},
> f:jobMetadataAnnotation1={}}, f:labels=\{.={}, f:app={}, f:orderId={},
> f:podLabelKey1={}, f:podLabelKey2={}}},
> f:spec=\{f:containers={k:{"name":"pi"}=\{.={}, f:command={}, f:image={},
> f:imagePullPolicy={}, f:name={}, f:resources={}, f:terminationMessagePath={},
> f:terminationMessagePolicy={}}}, f:dnsPolicy={}, f:restartPolicy={},
> f:schedulerName={}, f:securityContext={},
> f:terminationGracePeriodSeconds={}}}, f:ttlSecondsAfterFinished={}}}),
> manager=okhttp, operation=Update, time=2020-09-10T10:46:51Z,
> additionalProperties={})], name=job-1599734811571, namespace=default,
> ownerReferences=[], resourceVersion=1688691,
> selfLink=/apis/batch/v1/namespaces/default/jobs/job-1599734811571,
> uid=df5c8ed7-1436-4c57-854a-5703fa3baed8, additionalProperties={}),
> spec=JobSpec(activeDeadlineSeconds=7200, backoffLimit=6, completions=1,
> manualSelector=null, parallelism=1,
> selector=LabelSelector(matchExpressions=[],
> matchLabels=\{controller-uid=df5c8ed7-1436-4c57-854a-5703fa3baed8},
> additionalProperties={}),
> template=PodTemplateSpec(metadata=ObjectMeta(annotations=\{jobMetadataAnnotation1=random
> value}, clusterName=null, creationTimestamp=null,
> deletionGracePeriodSeconds=null, deletionTimestamp=null, finalizers=[],
> generateName=null, generation=null, labels=\{app=podFromCamelApp,
> controller-uid=df5c8ed7-1436-4c57-854a-5703fa3baed8,
> job-name=job-1599734811571, orderId=54702d2c-554b-4fa8-91ef-9e4e7abfe055,
> podLabelKey1=value1, podLabelKey2=value2}, managedFields=[], name=null,
> namespace=null, ownerReferences=[], resourceVersion=null, selfLink=null,
> uid=null, additionalProperties={}), spec=PodSpec(activeDeadlineSeconds=null,
> affinity=null, automountServiceAccountToken=null,
> containers=[Container(args=[], command=[echo, Job created from Apache Camel
> code at Thu Sep 10 11:46:51 BST 2020], env=[], envFrom=[], image=perl,
> imagePullPolicy=Always, lifecycle=null, livenessProbe=null, name=pi,
> ports=[], readinessProbe=null, resources=ResourceRequirements(limits=null,
> requests=null, additionalProperties={}), securityContext=null,
> startupProbe=null, stdin=null, stdinOnce=null,
> terminationMessagePath=/dev/termination-log, terminationMessagePolicy=File,
> tty=null, volumeDevices=[], volumeMounts=[], workingDir=null,
> additionalProperties={})], dnsConfig=null, dnsPolicy=ClusterFirst,
> enableServiceLinks=null, ephemeralContainers=[], hostAliases=[],
> hostIPC=null, hostNetwork=null, hostPID=null, hostname=null,
> imagePullSecrets=[], initContainers=[], nodeName=null, nodeSelector=null,
> overhead=null, preemptionPolicy=null, priority=null, priorityClassName=null,
> readinessGates=[], restartPolicy=OnFailure, runtimeClassName=null,
> schedulerName=default-scheduler,
> securityContext=PodSecurityContext(fsGroup=null, fsGroupChangePolicy=null,
> runAsGroup=null, runAsNonRoot=null, runAsUser=null, seLinuxOptions=null,
> supplementalGroups=[], sysctls=[], windowsOptions=null,
> additionalProperties={}), serviceAccount=null, serviceAccountName=null,
> shareProcessNamespace=null, subdomain=null, terminationGracePeriodSeconds=30,
> tolerations=[], topologySpreadConstraints=[], volumes=[],
> additionalProperties={}), additionalProperties={}),
> ttlSecondsAfterFinished=null, additionalProperties={}),
> status=JobStatus(active=null, completionTime=null, conditions=[],
> failed=null, startTime=null, succeeded=null, additionalProperties={}),
> additionalProperties={})
> at
> org.apache.camel.impl.converter.CoreTypeConverterRegistry.mandatoryConvertTo(CoreTypeConverterRegistry.java:216)
> ~[camel-base-3.4.2.jar:3.4.2]
> at
> org.apache.camel.impl.converter.CoreTypeConverterRegistry.mandatoryConvertTo(CoreTypeConverterRegistry.java:168)
> ~[camel-base-3.4.2.jar:3.4.2]
> at
> org.apache.camel.component.undertow.UndertowConsumer.sendResponse(UndertowConsumer.java:259)
> ~[camel-undertow-3.4.2.jar:3.4.2]
> at
> org.apache.camel.component.undertow.UndertowConsumer.handleRequest(UndertowConsumer.java:231)
> [camel-undertow-3.4.2.jar:3.4.2]
> at io.undertow.server.Connectors.executeRootHandler(Connectors.java:370)
> [undertow-core-2.1.2.Final.jar:2.1.2.Final]
> at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830)
> [undertow-core-2.1.2.Final.jar:2.1.2.Final]
> at
> org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> [jboss-threads-3.1.0.Final.jar:3.1.0.Final]
> at
> org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
> [jboss-threads-3.1.0.Final.jar:3.1.0.Final]
> at
> org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
> [jboss-threads-3.1.0.Final.jar:3.1.0.Final]
> at
> org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1423)
> [jboss-threads-3.1.0.Final.jar:3.1.0.Final]
> at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]
> [ https://192.168.64.3:8443/...] KubernetesRouteConsumerPods INFO Got event
> from Pod: job-1599734811571-rls7l, action: MODIFIED Phase: Pending
--
This message was sent by Atlassian Jira
(v8.3.4#803005)