apache / camel-quarkus Goto Github PK
View Code? Open in Web Editor NEWApache Camel Quarkus
Home Page: https://camel.apache.org
License: Apache License 2.0
Apache Camel Quarkus
Home Page: https://camel.apache.org
License: Apache License 2.0
This is to allow the (planned) Quarkus platform repo to run our tests.
After adding a proper integration test for the new bean extension (introduced with Camel 3.0.0-M3) it turns out that the Bean Component is using dynamic proxies under the hood and therefore the test is failing in the native mode.
They still start with quarkus-integration-test-camel-
but they should start with camel-quarkus-integration-test-
. This was forgotten in #3.
Please assign to me.
Error: Detected the ForkJoinPool.commonPool() in the image heap. The common pool must be created at run time because the parallelism depends on the number of cores available at run time. Therefore the common pool used during image generation must not be reachable, e.g., via a static field that caches a copy of the common pool. The object was probably created by a class initializer and is reachable from a static field. By default, all class initialization is done during native image building.You can manually delay class initialization to image run time by using the option -H:ClassInitialization=<class-name>. Or you can write your own initialization methods and call them explicitly from your main entry point.
Detailed message:
Trace: object com.github.benmanes.caffeine.cache.WILMS
object org.apache.camel.support.LRUWeakCache
field org.apache.camel.support.IntrospectionSupport.CACHE
com.oracle.svm.core.util.UserError$UserException: Detected the ForkJoinPool.commonPool() in the image heap. The common pool must be created at run time because the parallelism depends on the number of cores available at run time. Therefore the common pool used during image generation must not be reachable, e.g., via a static field that caches a copy of the common pool. The object was probably created by a class initializer and is reachable from a static field. By default, all class initialization is done during native image building.You can manually delay class initialization to image run time by using the option -H:ClassInitialization=<class-name>. Or you can write your own initialization methods and call them explicitly from your main entry point.
Detailed message:
Trace: object com.github.benmanes.caffeine.cache.WILMS
object org.apache.camel.support.LRUWeakCache
field org.apache.camel.support.IntrospectionSupport.CACHE
at com.oracle.svm.core.util.UserError.abort(UserError.java:75)
at com.oracle.svm.hosted.FallbackFeature.reportAsFallback(FallbackFeature.java:216)
at com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:732)
at com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:522)
at com.oracle.svm.hosted.NativeImageGenerator.lambda$run$0(NativeImageGenerator.java:440)
at java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1386)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Detected the ForkJoinPool.commonPool() in the image heap. The common pool must be created at run time because the parallelism depends on the number of cores available at run time. Therefore the common pool used during image generation must not be reachable, e.g., via a static field that caches a copy of the common pool. The object was probably created by a class initializer and is reachable from a static field. By default, all class initialization is done during native image building.You can manually delay class initialization to image run time by using the option -H:ClassInitialization=<class-name>. Or you can write your own initialization methods and call them explicitly from your main entry point.
Detailed message:
Trace: object com.github.benmanes.caffeine.cache.WILMS
object org.apache.camel.support.LRUWeakCache
field org.apache.camel.support.IntrospectionSupport.CACHE
I know it might be closer to demoware but it would be really clear in people's mind if we could use the Camel Twitter integration in Quarkus as part of a flow. It's also easier to set up that the current connectors you are offering here.
Once quarkusio/quarkus#3136 get resolved, we can make our integration test projects idiomatic again. This would mean (at least) to re-introduce the <scope>test</scope>
occurrences that got removed in #35 .
i.e.
Currently, deferInitPhase
true or false needs to be decided by the application developer depending on whether she wants to pass different config values to the app at runtime. However, the CamelRuntime could potentially be made smart enough to decide based on the available config values. E.g. {{env:AWS_ACCESS_KEY}}
is a clear indicator of a runtime value.
cc @gnodet
We should migrate to Camel SNAPSHOT so we can be ready for Camel 3.0.M4 and onwards.
The initial source code is targeted for Camel 3.0.M2
We can grab the SNAPSHOT jars from Maven Snapshot repo
https://repository.apache.org/snapshots/
@oscerd could you please create RELEASING.adoc
or similar and document the release process there? I'd need to know that not to break the process when working on #112 . I'd especially need to know whether you use the usual release:prepare
release perform
sequence (with some special profiles and params?), or if you are setting the versions manually/with a shell script?
We should add information about what components are quarkus ready to the camel catalog
/cc @davsclaus @oscerd
The main question is where ? as camel has also a camel-jetty component we can't put the jetty extension under the extension folder as the name will clash.
Maybe be jetty-common ?
Describe the bug
When using the camel extension, the application property quarkus.camel.routes-uris
is not overridden at run time with the native executable. It should be in ConfigPhase.RUN_TIME
instead of ConfigPhase.BUILD_AND_RUN_TIME_FIXED
.
Original discussion here
Expected behavior
When overriding application property routes-uris
with a config/application.properties file or environment variable, it should be taken into at run time by the executable.
Actual behavior
Still takes the value from the development version in resources/application.properties no matter what.
To Reproduce
Steps to reproduce the behavior:
git clone https://github.com/alainpham/quarkus-kafka-camel-servlet.git
cd quarkus-kafka-camel-servlet
environment:
- 'QUARKUS_CAMEL_ROUTES_URIS=file:/camel/routessss.xml'
docker-compose up
Configuration
# Add your application.properties here, if applicable.
Screenshots
(If applicable, add screenshots to help explain your problem.)
Environment (please complete the following information):
uname -a
or ver
: 3.10.0-957.21.3.el7.x86_64java -version
:openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-20190523183340.buildslave.jdk8u-src-tar--b03)
OpenJDK 64-Bit GraalVM CE 19.0.2 (build 25.212-b03-jvmci-19-b04, mixed mode)
The GAVs should be renamed to
groupId: org.apache.camel.quarkus
artifactId: camel-quarkus-core (etc)
FastCamelContext.clearModel()
was introducted with the upgrade to Camel 3.0.0-M3. It causes some NPEs at runtime, e.g. in org.apache.camel.reifier.errorhandler.ErrorHandlerReifier.lookupErrorHandlerFactory(RouteContext, String, boolean)
or in FastCamelRuntime.dumpRoutes()
because RouteContext.getRoute()
returns null after FastCamelContext.clearModel()
was called
See #56
Assuming we have a route that contains something like:
.bean(OrderService.class, "doSomething")
Then the OrderService
should be listed among the classes that require reflection.
Investigate quarkusio/quarkus#2351
@gnodet added these substitutions in his Camel 3.0.0-M3 workign branch. I had to remove them to make the core-cdi itest pass. We should figure out whether they can be added conditionally using com.oracle.svm.core.annotate.TargetClass.onlyWith
@TargetClass(className = "org.apache.camel.reifier.ProcessorReifier")
final class Target_org_apache_camel_reifier_ProcessorReifier {
@Alias
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.FromAlias)
private static Map<Class<?>, Function<ProcessorDefinition<?>, ProcessorReifier<? extends ProcessorDefinition<?>>>> PROCESSORS = null;
}
@TargetClass(className = "org.apache.camel.reifier.dataformat.DataFormatReifier")
final class Target_org_apache_camel_reifier_dataformat_DataFormatReifier {
@Alias
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.FromAlias)
private static Map<Class<?>, Function<DataFormatDefinition, DataFormatReifier<? extends DataFormatDefinition>>> DATAFORMATS = null;
}
@TargetClass(className = "org.apache.camel.reifier.loadbalancer.LoadBalancerReifier")
final class Target_org_apache_camel_reifier_loadbalancer_LoadBalancerReifier {
@Alias
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.FromAlias)
private static Map<Class<?>, Function<LoadBalancerDefinition, LoadBalancerReifier<? extends LoadBalancerDefinition>>> LOAD_BALANCERS = null;
}
@TargetClass(className = "org.apache.camel.reifier.transformer.TransformerReifier")
final class Target_org_apache_camel_reifier_transformer_TransformerReifier {
@Alias
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.FromAlias)
private static Map<Class<?>, Function<TransformerDefinition, TransformerReifier<? extends TransformerDefinition>>> TRANSFORMERS = null;
}
@TargetClass(className = "org.apache.camel.reifier.validator.ValidatorReifier")
final class Target_org_apache_camel_reifier_validator_ValidatorReifier {
@Alias
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.FromAlias)
private static Map<Class<?>, Function<ValidatorDefinition, ValidatorReifier<? extends ValidatorDefinition>>> VALIDATORS = null;
}
Once #24 is fixed we should do a first version of camel-quarkus, drop camel bits from quarkus repo and get a new quarkus release that includes our camel bits
In native mode, camel-core uses a SimpleLRUCache
https://github.com/apache/camel-quarkus/blob/master/extensions/core/deployment/src/main/java/org/apache/camel/quarkus/core/deployment/CamelProcessor.java#L125
This is because at the time of writing the extension or camel-core, caffeine was not supported by quarkus. As there is now a dedicated extension for caffeine we should think to use a caffeine based LRUCache instead of the simple one
The root java package name should be renamed to
The main question is where ? as camel has also a camel-xstream component we can't put the xstream extension under the extension folder as the name will clash.
Maybe be xstream-common ?
The source code should have ASF license headers in java / xml files etc, just like Apache Camel project
Steps to reproduce:
src/test/java
from io.quarkus.camel
to org.apache.camel.quarkus
. See this branch: https://github.com/ppalaga/camel-quarkus/commits/i6.2mvn clean test
from the top directory of the repo fails in the camel-quarkus-servlet-deployment
module:[INFO] Running org.apache.camel.quarkus.component.servlet.test.MinimalConfigTest
2019-07-02 13:33:19,038 INFO [io.qua.dep.QuarkusAugmentor] (main) Beginning quarkus augmentation
2019-07-02 13:33:20,084 INFO [io.qua.dep.QuarkusAugmentor] (main) Quarkus augmentation completed in 1046ms
2019-07-02 13:33:20,287 INFO [org.apa.cam.imp.con.FastTypeConverterRegistry] (main) Type converters loaded (core: 183, classpath: 20)
2019-07-02 13:33:20,584 INFO [org.apa.cam.qua.cor.run.sup.FastCamelContext] (main) Apache Camel 3.0.0-M2 (CamelContext: camel-1) is starting
2019-07-02 13:33:20,584 INFO [org.apa.cam.imp.DefaultManagementStrategy] (main) JMX is disabled
2019-07-02 13:33:20,592 INFO [org.apa.cam.qua.cor.run.sup.FastCamelContext] (main) StreamCaching is not in use. If using streams then its recommended to enable stream caching. See more details at http://camel.apache.org/stream-caching.html
2019-07-02 13:33:20,602 INFO [org.apa.cam.qua.cor.run.sup.FastCamelContext] (main) Route: route1 started and consuming from: servlet:/custom?servletName=my-servlet
2019-07-02 13:33:20,603 INFO [org.apa.cam.qua.cor.run.sup.FastCamelContext] (main) Route: route2 started and consuming from: servlet:/hello?matchOnUriPrefix=true
2019-07-02 13:33:20,603 INFO [org.apa.cam.qua.cor.run.sup.FastCamelContext] (main) Route: route3 started and consuming from: servlet:/rest-get?httpMethodRestrict=GET
2019-07-02 13:33:20,604 INFO [org.apa.cam.qua.cor.run.sup.FastCamelContext] (main) Route: route4 started and consuming from: servlet:/rest-post?httpMethodRestrict=POST
org.apache.camel.FailedToStartRouteException: Failed to start route route5 because of Multiple consumers for the same endpoint is not allowed: servlet:/hello?matchOnUriPrefix=true
at org.apache.camel.impl.AbstractCamelContext.doStartOrResumeRouteConsumers(AbstractCamelContext.java:3879)
at org.apache.camel.impl.AbstractCamelContext.doStartRouteConsumers(AbstractCamelContext.java:3855)
at org.apache.camel.impl.AbstractCamelContext.safelyStartRouteServices(AbstractCamelContext.java:3775)
at org.apache.camel.impl.AbstractCamelContext.doStartOrResumeRoutes(AbstractCamelContext.java:3539)
at org.apache.camel.impl.AbstractCamelContext.doStartCamel(AbstractCamelContext.java:3391)
at org.apache.camel.impl.AbstractCamelContext.lambda$doStart$2(AbstractCamelContext.java:3188)
at org.apache.camel.impl.AbstractCamelContext.doWithDefinedClassLoader(AbstractCamelContext.java:3205)
at org.apache.camel.impl.AbstractCamelContext.doStart(AbstractCamelContext.java:3186)
at org.apache.camel.support.service.ServiceSupport.start(ServiceSupport.java:86)
at org.apache.camel.impl.AbstractCamelContext.start(AbstractCamelContext.java:3102)
at org.apache.camel.quarkus.core.runtime.support.FastCamelRuntime.doStart(FastCamelRuntime.java:139)
at org.apache.camel.quarkus.core.runtime.support.FastCamelRuntime.start(FastCamelRuntime.java:101)
at org.apache.camel.quarkus.core.runtime.CamelTemplate.start(CamelTemplate.java:67)
at io.quarkus.deployment.steps.CamelInitProcessor$createRuntimeInitTask12.deploy_0(CamelInitProcessor$createRuntimeInitTask12.zig:92)
at io.quarkus.deployment.steps.CamelInitProcessor$createRuntimeInitTask12.deploy(CamelInitProcessor$createRuntimeInitTask12.zig:36)
at io.quarkus.runner.ApplicationImpl1.doStart(ApplicationImpl1.zig:66)
at io.quarkus.runtime.Application.start(Application.java:84)
at io.quarkus.runner.RuntimeRunner.run(RuntimeRunner.java:118)
at io.quarkus.test.QuarkusUnitTest.beforeAll(QuarkusUnitTest.java:235)
at org.junit.jupiter.engine.descriptor.ClassTestDescriptor.lambda$invokeBeforeAllCallbacks$8(ClassTestDescriptor.java:361)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.jupiter.engine.descriptor.ClassTestDescriptor.invokeBeforeAllCallbacks(ClassTestDescriptor.java:361)
at org.junit.jupiter.engine.descriptor.ClassTestDescriptor.before(ClassTestDescriptor.java:197)
at org.junit.jupiter.engine.descriptor.ClassTestDescriptor.before(ClassTestDescriptor.java:77)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:132)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80)
at java.util.ArrayList.forEach(ArrayList.java:1257)
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:38)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80)
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:32)
at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)
at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:51)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:170)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:154)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:90)
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:142)
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:117)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:383)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:344)
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:125)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:417)
Here is the full log on Travis attached to my fork: https://travis-ci.org/ppalaga/camel-quarkus/builds/553249660?utm_source=github_status&utm_medium=notification
There are different errors when the packages in integration tests are renamed. Let me report them here. In separate comments.
The background story is that I am trying to write a user guide which is very hard without working examples. We could actually use our existing integration tests as examples but for that purpose, their pom hierarchy is not what the end user would need. So I am hereby proposing (1) to introduce a new POM (let's call it camel-quarkus-application-parent
) that could serve as a parent for end user applications and (2) use that POM as a parent in our integration tests.
With (1) and (2) in place, the user could just copy an integration test out of our source tree to get a standalone example project (that is also granted to work because we run the tests regularly). We could further improve the user experience in the future by having per-itest source ZIPs on Maven Central that the user could just download and unpack instead of cloning the whole git repo. And even further, we could perhaps offer a maven plugin that would list, download and unpack the examples for a given Camel Quarkus version.
WDYT?
So we use the same style of other tests
Actually the property native-camel is needed. If you run the normal command, the aws integration tests are not built as native
We should look at using MainSupport (parts of Camel Main) some more for bootstrapping camel-quarkus.
Then its similar across standalone Camel, Camel K, and Camel Quarkus. And also Camel Main has parts that are similar to Camel Spring Boot.
Blocked by quarkusio/quarkusio.github.io#268
Migrating from quarkusio/quarkus#2585
Assigning to me, originally a suggestion of @lburgazzoli :
another interesting thing would also be to configure [via configuation.properties] the default rest configuration from the camel-servlet extension
Noticed during build that something is downloaded from
[INFO]
[INFO] --- formatter-maven-plugin:2.8.1:format (default) @ camel-quarkus-build-parent ---
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.core.resources/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.core.expressions/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.core.runtime/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.osgi/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.equinox.common/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.core.jobs/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.equinox.registry/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.equinox.preferences/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.core.contenttype/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.equinox.app/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.core.filesystem/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.text/maven-metadata.xml
Downloading from jboss-public-repository: https://repository.jboss.org/nexus/content/groups/public/org/eclipse/platform/org.eclipse.core.commands/maven-metadata.xml
[INFO] Using 'UTF-8' encoding to format source files.
[INFO] Number of files to be formatted: 0
We should favour using only maven central as much as possible. Not sure why this maven plugin does that above.
When using camel-quarkus we should migrate the option prefix from
To be using
If you run the Integration test for AWS components, where you need the environment variables, it will fail with the following error
oscerd@ghost:~/workspace/apache-camel/camel-quarkus/integration-tests/aws-s3$ mvn clean install -Dnative -Dnative-image.docker-build=true -Dnative-image.xmx=5g -Dnative-camel
[INFO] Scanning for projects...
[INFO]
[INFO] ---< org.apache.camel.quarkus:camel-quarkus-integration-test-aws-s3 >---
[INFO] Building Camel Quarkus :: Integration Tests :: AWS S3 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Deleting /home/oscerd/workspace/apache-camel/camel-quarkus/integration-tests/aws-s3/target
[INFO]
[INFO] --- maven-enforcer-plugin:1.4.1:enforce (enforce) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Skipping Rule Enforcement.
[INFO]
[INFO] --- maven-enforcer-plugin:1.4.1:enforce (enforce-maven-version) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Skipping Rule Enforcement.
[INFO]
[INFO] --- gmavenplus-plugin:1.7.1:execute (test-project-sanity-checks) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Using Groovy 2.5.7 to perform execute.
[INFO] Running Groovy script from file:////home/oscerd/workspace/apache-camel/camel-quarkus/integration-tests/aws-s3/../test-project-sanity-checks.groovy.
[INFO]
[INFO] --- maven-remote-resources-plugin:1.5:process (process-resource-bundles) @ camel-quarkus-integration-test-aws-s3 ---
[INFO]
[INFO] --- maven-resources-plugin:3.1.0:resources (default-resources) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] Copying 3 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.0:compile (default-compile) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 2 source files to /home/oscerd/workspace/apache-camel/camel-quarkus/integration-tests/aws-s3/target/classes
[INFO]
[INFO] --- maven-resources-plugin:3.1.0:testResources (default-testResources) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/oscerd/workspace/apache-camel/camel-quarkus/integration-tests/aws-s3/src/test/resources
[INFO] Copying 3 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.0:testCompile (default-testCompile) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.22.0:test (default-test) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Tests are skipped.
[INFO]
[INFO] --- maven-jar-plugin:3.1.0:jar (default-jar) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] Building jar: /home/oscerd/workspace/apache-camel/camel-quarkus/integration-tests/aws-s3/target/camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT.jar
[INFO]
[INFO] --- quarkus-maven-plugin:0.19.1:build (default) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] [io.quarkus.deployment.QuarkusAugmentor] Beginning quarkus augmentation
[INFO] [org.jboss.threads] JBoss Threads version 3.0.0.Beta4
[INFO] [io.quarkus.deployment.QuarkusAugmentor] Quarkus augmentation completed in 1824ms
[INFO] [io.quarkus.creator.phase.runnerjar.RunnerJarPhase] Building jar: /home/oscerd/workspace/apache-camel/camel-quarkus/integration-tests/aws-s3/target/camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner.jar
[INFO]
[INFO] --- quarkus-maven-plugin:0.19.1:native-image (native-image) @ camel-quarkus-integration-test-aws-s3 ---
[INFO] [io.quarkus.creator.phase.nativeimage.NativeImagePhase] Running Quarkus native-image plugin on Java HotSpot(TM) 64-Bit Server VM
[INFO] [io.quarkus.creator.phase.nativeimage.NativeImagePhase] docker run -v /home/oscerd/workspace/apache-camel/camel-quarkus/integration-tests/aws-s3/target:/project:z --rm --user 1000:1000 quay.io/quarkus/ubi-quarkus-native-image:19.0.2 -J-Djava.util.logging.manager=org.jboss.logmanager.LogManager -J-Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true --initialize-at-build-time= -H:InitialCollectionPolicy=com.oracle.svm.core.genscavenge.CollectionPolicy$BySpaceAndTime -jar camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner.jar -J-Djava.util.concurrent.ForkJoinPool.common.parallelism=1 -H:FallbackThreshold=0 -H:+ReportExceptionStackTraces -H:+PrintAnalysisCallTree -J-Xmx5g -H:-AddAllCharsets -H:EnableURLProtocols=http,https --enable-all-security-services -H:-SpawnIsolates -H:+JNI --no-server -H:-UseServiceLoaderFeature -H:+StackTrace
[camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner:9] classlist: 9,695.31 ms
[camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner:9] (cap): 1,044.28 ms
[camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner:9] setup: 2,482.74 ms
12:29:27,829 INFO [org.apa.cam.imp.con.FastTypeConverterRegistry] Type converters loaded (core: 183, classpath: 14)
12:29:28,843 INFO [org.jbo.threads] JBoss Threads version 3.0.0.Beta4
12:29:29,629 INFO [org.xnio] XNIO version 3.7.2.Final
12:29:29,735 INFO [org.xni.nio] XNIO NIO Implementation Version 3.7.2.Final
Warning: RecomputeFieldValue.FieldOffset automatic substitution failed. The automatic substitution registration was attempted because a call to sun.misc.Unsafe.objectFieldOffset(Field) was detected in the static initializer of io.quarkus.runtime.CleanableExecutor$Resetter. Detailed failure reason(s): The argument of Unsafe.objectFieldOffset(Field) is not a constant field., Could not determine the field where the value produced by the call to sun.misc.Unsafe.objectFieldOffset(Field) for the field offset computation is stored. The call is not directly followed by a field store or by a sign extend node followed directly by a field store.
Warning: RecomputeFieldValue.FieldOffset automatic substitution failed. The automatic substitution registration was attempted because a call to sun.misc.Unsafe.objectFieldOffset(Field) was detected in the static initializer of io.quarkus.runtime.CleanableExecutor$Resetter. Detailed failure reason(s): The argument of Unsafe.objectFieldOffset(Field) is not a constant field., Could not determine the field where the value produced by the call to sun.misc.Unsafe.objectFieldOffset(Field) for the field offset computation is stored. The call is not directly followed by a field store or by a sign extend node followed directly by a field store.
Warning: RecomputeFieldValue.FieldOffset automatic substitution failed. The automatic substitution registration was attempted because a call to sun.misc.Unsafe.objectFieldOffset(Field) was detected in the static initializer of org.jboss.threads.ThreadLocalResettingRunnable$Resetter. Detailed failure reason(s): The argument of Unsafe.objectFieldOffset(Field) is not a constant field., Could not determine the field where the value produced by the call to sun.misc.Unsafe.objectFieldOffset(Field) for the field offset computation is stored. The call is not directly followed by a field store or by a sign extend node followed directly by a field store.
Warning: RecomputeFieldValue.FieldOffset automatic substitution failed. The automatic substitution registration was attempted because a call to sun.misc.Unsafe.objectFieldOffset(Field) was detected in the static initializer of org.jboss.threads.ThreadLocalResettingRunnable$Resetter. Detailed failure reason(s): The argument of Unsafe.objectFieldOffset(Field) is not a constant field., Could not determine the field where the value produced by the call to sun.misc.Unsafe.objectFieldOffset(Field) for the field offset computation is stored. The call is not directly followed by a field store or by a sign extend node followed directly by a field store.
[camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner:9] analysis: 14,555.60 ms
Printing call tree to /project/reports/call_tree_camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner_20190722_122942.txt
Printing list of used classes to /project/reports/used_classes_camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner_20190722_122943.txt
Printing list of used packages to /project/reports/used_packages_camel-quarkus-integration-test-aws-s3-0.0.1-SNAPSHOT-runner_20190722_122943.txt
Error: Class initialization failed: io.quarkus.runner.ApplicationImpl1
Detailed message:
com.oracle.svm.core.util.UserError$UserException: Class initialization failed: io.quarkus.runner.ApplicationImpl1
Detailed message:
at com.oracle.svm.core.util.UserError.abort(UserError.java:75)
at com.oracle.svm.hosted.FallbackFeature.reportAsFallback(FallbackFeature.java:219)
at com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:733)
at com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:523)
at com.oracle.svm.hosted.NativeImageGenerator.lambda$run$0(NativeImageGenerator.java:441)
at java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1386)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Class initialization failed: io.quarkus.runner.ApplicationImpl1
Detailed message:
at com.oracle.graal.pointsto.constraints.UnsupportedFeatures.report(UnsupportedFeatures.java:130)
at com.oracle.graal.pointsto.BigBang.finish(BigBang.java:564)
at com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:684)
... 7 more
Caused by: java.lang.ExceptionInInitializerError
at sun.misc.Unsafe.ensureClassInitialized(Native Method)
at com.oracle.svm.hosted.classinitialization.ConfigurableClassInitialization.ensureClassInitialized(ConfigurableClassInitialization.java:129)
at com.oracle.svm.hosted.classinitialization.ConfigurableClassInitialization.computeInitKindAndMaybeInitializeClass(ConfigurableClassInitialization.java:357)
at com.oracle.svm.hosted.classinitialization.ConfigurableClassInitialization.computeInitKindAndMaybeInitializeClass(ConfigurableClassInitialization.java:92)
at com.oracle.svm.hosted.classinitialization.ConfigurableClassInitialization.maybeInitializeHosted(ConfigurableClassInitialization.java:120)
at com.oracle.svm.hosted.SVMHost.registerType(SVMHost.java:179)
at com.oracle.graal.pointsto.meta.AnalysisUniverse.createType(AnalysisUniverse.java:263)
at com.oracle.graal.pointsto.meta.AnalysisUniverse.lookupAllowUnresolved(AnalysisUniverse.java:204)
at com.oracle.graal.pointsto.infrastructure.WrappedConstantPool.lookupType(WrappedConstantPool.java:154)
at org.graalvm.compiler.java.BytecodeParser.lookupType(BytecodeParser.java:4229)
at org.graalvm.compiler.java.BytecodeParser.genNewInstance(BytecodeParser.java:4472)
at org.graalvm.compiler.java.BytecodeParser.processBytecode(BytecodeParser.java:5260)
at org.graalvm.compiler.java.BytecodeParser.iterateBytecodesForBlock(BytecodeParser.java:3416)
at org.graalvm.compiler.java.BytecodeParser.processBlock(BytecodeParser.java:3223)
at org.graalvm.compiler.java.BytecodeParser.build(BytecodeParser.java:944)
at org.graalvm.compiler.java.BytecodeParser.buildRootMethod(BytecodeParser.java:838)
at org.graalvm.compiler.java.GraphBuilderPhase$Instance.run(GraphBuilderPhase.java:84)
at org.graalvm.compiler.phases.Phase.run(Phase.java:49)
at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
at org.graalvm.compiler.phases.Phase.apply(Phase.java:42)
at org.graalvm.compiler.phases.Phase.apply(Phase.java:38)
at com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.parse(MethodTypeFlowBuilder.java:214)
at com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.apply(MethodTypeFlowBuilder.java:333)
at com.oracle.graal.pointsto.flow.MethodTypeFlow.doParse(MethodTypeFlow.java:310)
at com.oracle.graal.pointsto.flow.MethodTypeFlow.ensureParsed(MethodTypeFlow.java:300)
at com.oracle.graal.pointsto.flow.MethodTypeFlow.addContext(MethodTypeFlow.java:107)
at com.oracle.graal.pointsto.flow.StaticInvokeTypeFlow.update(InvokeTypeFlow.java:346)
at com.oracle.graal.pointsto.BigBang$2.run(BigBang.java:509)
at com.oracle.graal.pointsto.util.CompletionExecutor.lambda$execute$0(CompletionExecutor.java:171)
at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402)
... 4 more
Caused by: java.lang.RuntimeException: Failed to start quarkus
at io.quarkus.runner.ApplicationImpl1.<clinit>(ApplicationImpl1.zig:342)
... 34 more
Caused by: org.apache.camel.RuntimeCamelException: org.apache.camel.FailedToCreateRouteException: Failed to create route route1 at: >>> To[aws-s3://devvox1] <<< in route: Route(route1)[From[timer:quarkus?repeatCount=1] -> [SetHeade... because of Failed to resolve endpoint: aws-s3://devvox1 due to: Cannot auto create component: aws-s3
at org.apache.camel.RuntimeCamelException.wrapRuntimeCamelException(RuntimeCamelException.java:52)
at org.apache.camel.quarkus.core.runtime.support.FastCamelRuntime.doInit(FastCamelRuntime.java:133)
at org.apache.camel.quarkus.core.runtime.support.FastCamelRuntime.init(FastCamelRuntime.java:91)
at org.apache.camel.quarkus.core.runtime.CamelRecorder.init(CamelRecorder.java:58)
at io.quarkus.deployment.steps.CamelInitProcessor$createInitTask17.deploy_0(CamelInitProcessor$createInitTask17.zig:73)
at io.quarkus.deployment.steps.CamelInitProcessor$createInitTask17.deploy(CamelInitProcessor$createInitTask17.zig:92)
at io.quarkus.runner.ApplicationImpl1.<clinit>(ApplicationImpl1.zig:312)
... 34 more
Caused by: org.apache.camel.FailedToCreateRouteException: Failed to create route route1 at: >>> To[aws-s3://devvox1] <<< in route: Route(route1)[From[timer:quarkus?repeatCount=1] -> [SetHeade... because of Failed to resolve endpoint: aws-s3://devvox1 due to: Cannot auto create component: aws-s3
at org.apache.camel.reifier.RouteReifier.addRoutes(RouteReifier.java:361)
at org.apache.camel.reifier.RouteReifier.addRoutes(RouteReifier.java:106)
at org.apache.camel.impl.AbstractCamelContext.startRoute(AbstractCamelContext.java:1084)
at org.apache.camel.quarkus.core.runtime.support.FastCamelContext.reifyRoutes(FastCamelContext.java:110)
at org.apache.camel.quarkus.core.runtime.support.FastCamelRuntime.loadRoutes(FastCamelRuntime.java:178)
at org.apache.camel.quarkus.core.runtime.support.FastCamelRuntime.doInit(FastCamelRuntime.java:131)
... 39 more
Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: aws-s3://devvox1 due to: Cannot auto create component: aws-s3
at org.apache.camel.impl.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:782)
at org.apache.camel.support.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:74)
at org.apache.camel.reifier.RouteReifier.resolveEndpoint(RouteReifier.java:120)
at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:117)
at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:123)
at org.apache.camel.reifier.SendReifier.resolveEndpoint(SendReifier.java:40)
at org.apache.camel.reifier.SendReifier.createProcessor(SendReifier.java:34)
at org.apache.camel.reifier.ProcessorReifier.makeProcessorImpl(ProcessorReifier.java:536)
at org.apache.camel.reifier.ProcessorReifier.makeProcessor(ProcessorReifier.java:497)
at org.apache.camel.reifier.ProcessorReifier.addRoutes(ProcessorReifier.java:241)
at org.apache.camel.reifier.RouteReifier.addRoutes(RouteReifier.java:358)
... 44 more
Caused by: org.apache.camel.RuntimeCamelException: Cannot auto create component: aws-s3
at org.apache.camel.impl.AbstractCamelContext.getComponent(AbstractCamelContext.java:511)
at org.apache.camel.impl.AbstractCamelContext.getComponent(AbstractCamelContext.java:470)
at org.apache.camel.impl.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:725)
... 54 more
Caused by: org.apache.camel.RuntimeCamelException: Cannot auto create component: aws-s3
at org.apache.camel.impl.AbstractCamelContext.initComponent(AbstractCamelContext.java:566)
at org.apache.camel.impl.AbstractCamelContext.access$000(AbstractCamelContext.java:190)
at org.apache.camel.impl.AbstractCamelContext$2.apply(AbstractCamelContext.java:495)
at org.apache.camel.impl.AbstractCamelContext$2.apply(AbstractCamelContext.java:491)
at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1660)
at org.apache.camel.impl.AbstractCamelContext.getComponent(AbstractCamelContext.java:491)
... 56 more
Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException: Property with key [env:S3_REGION] using function [env] returned null value which is not allowed, from input: {{env:S3_REGION}}
at org.apache.camel.quarkus.core.runtime.support.RuntimeSupport.lambda$bindProperties$3(RuntimeSupport.java:53)
at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
at java.util.Iterator.forEachRemaining(Iterator.java:116)
at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
at org.apache.camel.quarkus.core.runtime.support.RuntimeSupport.bindProperties(RuntimeSupport.java:43)
at org.apache.camel.quarkus.core.runtime.support.FastCamelContext.resolve(FastCamelContext.java:102)
at org.apache.camel.quarkus.core.runtime.support.FastCamelContext.lambda$createComponentResolver$0(FastCamelContext.java:68)
at org.apache.camel.impl.AbstractCamelContext.initComponent(AbstractCamelContext.java:560)
... 61 more
Caused by: java.lang.IllegalArgumentException: Property with key [env:S3_REGION] using function [env] returned null value which is not allowed, from input: {{env:S3_REGION}}
at org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.getPropertyValue(DefaultPropertiesParser.java:227)
at org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.readProperty(DefaultPropertiesParser.java:157)
at org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.doParse(DefaultPropertiesParser.java:116)
at org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.parse(DefaultPropertiesParser.java:100)
at org.apache.camel.component.properties.DefaultPropertiesParser.parseUri(DefaultPropertiesParser.java:63)
at org.apache.camel.component.properties.PropertiesComponent.parseUri(PropertiesComponent.java:244)
at org.apache.camel.component.properties.PropertiesComponent.parseUri(PropertiesComponent.java:170)
at org.apache.camel.impl.AbstractCamelContext.resolvePropertyPlaceholders(AbstractCamelContext.java:2407)
at org.apache.camel.quarkus.core.runtime.support.RuntimeSupport.lambda$bindProperties$3(RuntimeSupport.java:49)
... 77 more
Error: Image build request failed with exit status 1
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.