Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 539086 - JakartaEE TCK - CJE based JIPP instance for building and running TCK tests against GlassFish RI
Summary: JakartaEE TCK - CJE based JIPP instance for building and running TCK tests ag...
Status: CLOSED FIXED
Alias: None
Product: Community
Classification: Eclipse Foundation
Component: CI-Jenkins (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 10
: P3 normal with 1 vote (vote)
Target Milestone: ---   Edit
Assignee: Mikaël Barbero CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-09-14 11:27 EDT by Anand Francis Joseph CLA
Modified: 2018-10-14 22:16 EDT (History)
5 users (show)

See Also:


Attachments
container log (95.93 KB, text/plain)
2018-09-20 09:32 EDT, Mikaël Barbero CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Anand Francis Joseph CLA 2018-09-14 11:27:00 EDT
Scenario 1: Cloudbees based setup (I assume this is what you refer as CJE)

Requirements for JakartaEE TCK.

- BlueOcean plugin

- Ablity to clone the repository from Github.

- Support for Kubernetes based node creation using Jenkins file

- Each Kubernetes pod should be able to use 12GB memory and 2vCPU (minimum)

- Should be able to run parallel stages. The more parallel runs, the
better (Stages - 1 build stage , 52 parallel test run stage.)

- Should be able to publish to OSSRH (not currently a priority)
Comment 1 Frederic Gurr CLA 2018-09-14 12:51:43 EDT
The JakartaEE TCK JIPP is now setup at https://jenkins.eclipse.org/jakartaee-tck/

Committers should now be able to login and create jobs. Please note that you will need to login with your _email_ address as your username.

BlueOcean plugin has been installed as requested.

If you require additional plugins feel free to reopen this bug and list them.

Please note: the JIPP is currently not configured to publish artifacts to OSSRH. This will be done at a later date.
Comment 2 Anand Francis Joseph CLA 2018-09-14 13:20:40 EDT
Hi Fredric,
I am yet to be a committer in this project. I am getting an error saying that I do not have permission to create a pipeline. The committer elections are underway. Is it possible to give me access to my email id ?

Thanks
Anand.
Comment 3 Frederic Gurr CLA 2018-09-14 14:07:19 EDT
Please provide a +1 from the project lead.
Comment 4 Padmanabha Bhat CLA 2018-09-17 06:45:00 EDT
+1
Comment 5 Mikaël Barbero CLA 2018-09-17 19:38:19 EDT
(In reply to Anand Francis Joseph from comment #2)
> Hi Fredric,
> I am yet to be a committer in this project. I am getting an error saying
> that I do not have permission to create a pipeline. The committer elections
> are underway. Is it possible to give me access to my email id ?
> 
> Thanks
> Anand.

Done. Please let us know once you're a committer so that we can remove the exception. Thanks.
Comment 6 Anand Francis Joseph CLA 2018-09-18 13:05:56 EDT
I have got the committer access now to Jakarta EE TCK project. Please remove the exception.
Thanks
Anand.
Comment 7 Anand Francis Joseph CLA 2018-09-18 13:09:09 EDT
We would like to place the prebuilt JavaEE TCK binary bundle in some web url accessible from the CJE instance. Can you setup one if such a server does not exist and let us know how to upload the binary bundle to that web server.

For eg: Nightly glassfish bundles are uploaded here which can be accessed for testing.
http://download.oracle.com/glassfish/5.0.1/nightly/latest-glassfish.zip

we are looking for a similar setup. It can be Eclipse internal link as well but should be accessible from within the CJE (Kubernetes pods).
Comment 8 Anand Francis Joseph CLA 2018-09-18 13:25:41 EDT
https://jenkins.eclipse.org/jakartaee-tck/job/jakartaee-tck/job/master/6/console

The job seems to be hanging for a while now with the following comment.
Still waiting to schedule task
cts-ci-pod-012522cb-0191-40bc-adc1-0d87eeaff347-rkpsq-gqn9m is offline

Is my resource limits are bit high ?

I have a pod with 2 images. 
1. 2 cpu, 8GB memory
2. 1 cpu, 2GB memory.

Please let me know if you want me to reduce this setting to resolve the issue with pod creation.

If its due to some other issue, can you help me resolve it ?

Thanks 
Anand
Comment 9 Frederic Gurr CLA 2018-09-18 14:02:09 EDT
(In reply to Anand Francis Joseph from comment #6)
> I have got the committer access now to Jakarta EE TCK project. Please remove
> the exception.
> Thanks
> Anand.
Done.
Comment 10 Mikaël Barbero CLA 2018-09-18 14:02:38 EDT
(In reply to Anand Francis Joseph from comment #7)
> We would like to place the prebuilt JavaEE TCK binary bundle in some web url
> accessible from the CJE instance. Can you setup one if such a server does
> not exist and let us know how to upload the binary bundle to that web server.
> 
> For eg: Nightly glassfish bundles are uploaded here which can be accessed
> for testing.
> http://download.oracle.com/glassfish/5.0.1/nightly/latest-glassfish.zip
> 
> we are looking for a similar setup. It can be Eclipse internal link as well
> but should be accessible from within the CJE (Kubernetes pods).

Where does the lastest-glassfish.zip file comes from? Is it 100% build of Eclipse Glashfish? If that's the case, I can give temporary sftp/ssh access to our download server to one of the Glassfish committer (you?). The archive can then be made available from e.g., http://download.eclipse.org/glassfish/5.0.1/nightly/latest-glassfish.zip

(In reply to Anand Francis Joseph from comment #8)
> https://jenkins.eclipse.org/jakartaee-tck/job/jakartaee-tck/job/master/6/
> console
> 
> The job seems to be hanging for a while now with the following comment.
> Still waiting to schedule task
> cts-ci-pod-012522cb-0191-40bc-adc1-0d87eeaff347-rkpsq-gqn9m is offline
> 
> Is my resource limits are bit high ?
> 
> I have a pod with 2 images. 
> 1. 2 cpu, 8GB memory
> 2. 1 cpu, 2GB memory.
> 
> Please let me know if you want me to reduce this setting to resolve the
> issue with pod creation.
> 
> If its due to some other issue, can you help me resolve it ?

From the issue I see on the failing pods (bottom right on https://jenkins.eclipse.org/jakartaee-tck/, e.g., https://jenkins.eclipse.org/jakartaee-tck/plannedAgents/kubernetes/cts-ci-pod-012522cb-0191-40bc-adc1-0d87eeaff347-rkpsq-z84gf/problem)

you seem to expect the containers to be run as root. For security reason, we don't allow that. Containers are run using an arbitrarily assigned user ID. To make your images compliant with the restriction, I recommend you follow instruction on https://docs.openshift.com/container-platform/3.9/creating_images/guidelines.html#use-uid
Comment 11 Mikaël Barbero CLA 2018-09-18 14:08:10 EDT
(In reply to Mikaël Barbero from comment #10)
> Where does the lastest-glassfish.zip file comes from? Is it 100% build of
> Eclipse Glashfish? If that's the case, I can give temporary sftp/ssh access
> to our download server to one of the Glassfish committer (you?). The archive
> can then be made available from e.g.,
> http://download.eclipse.org/glassfish/5.0.1/nightly/latest-glassfish.zip

As a side note, I said "temporary" because we eventually expect that the publication of such a nightly build to be done from the Glassfish JIPP (which can push stuff to our download servers).
Comment 12 Anand Francis Joseph CLA 2018-09-19 08:23:33 EDT
I removed the problematic image (james/linora). But now the cts-ci image is failing with the following error :

Waiting (ErrImagePull) : rpc error: code = Unknown desc = write /var/lib/docker/tmp/GetImageBlob220058426: no space left on device

Link: https://jenkins.eclipse.org/jakartaee-tck/plannedAgents/kubernetes/cts-ci-pod-657307d3-0261-4db2-b3f7-5fc7004140f8-fsqfs-2h7cr/


Looks like there is some issue in this CJE instance.
Comment 13 Anand Francis Joseph CLA 2018-09-19 08:26:41 EDT
I just gave the download URL for Glassfish as an example. I need a server for hosting the Jakarta EE TCK binary bundle and not glassfish. Since the first runs we cannot build the Jakarta EE TCK, we want to place the pre-built binary bundle in some location (within Eclipse) and use that bundle for running the tests.
Comment 14 Mikaël Barbero CLA 2018-09-19 12:40:38 EDT
(In reply to Anand Francis Joseph from comment #12)
> I removed the problematic image (james/linora). But now the cts-ci image is
> failing with the following error :
> 
> Waiting (ErrImagePull) : rpc error: code = Unknown desc = write
> /var/lib/docker/tmp/GetImageBlob220058426: no space left on device
> 
> Link:
> https://jenkins.eclipse.org/jakartaee-tck/plannedAgents/kubernetes/cts-ci-
> pod-657307d3-0261-4db2-b3f7-5fc7004140f8-fsqfs-2h7cr/
> 
> 
> Looks like there is some issue in this CJE instance.

One of our cluster's node ran out of disk space. It has been taken down while we figure out why. Please try again.
Comment 15 Anand Francis Joseph CLA 2018-09-19 23:35:59 EDT
(In reply to Mikaël Barbero from comment #14)
> (In reply to Anand Francis Joseph from comment #12)
> > I removed the problematic image (james/linora). But now the cts-ci image is
> > failing with the following error :
> > 
> > Waiting (ErrImagePull) : rpc error: code = Unknown desc = write
> > /var/lib/docker/tmp/GetImageBlob220058426: no space left on device
> > 
> > Link:
> > https://jenkins.eclipse.org/jakartaee-tck/plannedAgents/kubernetes/cts-ci-
> > pod-657307d3-0261-4db2-b3f7-5fc7004140f8-fsqfs-2h7cr/
> > 
> > 
> > Looks like there is some issue in this CJE instance.
> 
> One of our cluster's node ran out of disk space. It has been taken down
> while we figure out why. Please try again.

The pod creation is successful now. Can you provide me access to upload Jakarta EE TCK binary bundle to a location in Eclipse download server. Something like
https://www.eclipse.org/downloads/jakartaee-tck/8.0.1/javaeects-8.0.1_15Sep2018.zip
or
https://download.eclipse.org/jakartaee-tck/8.0.1/javaeects-8.0.1_15Sep2018.zip

For GF we would still continue to download from oracle link,(till the time its available in Eclipse download server). The idea is to validate that we are able to run the Jakarta EE TCK against GF and this is not for the official certification. Is there some proxy required to access the site http://download.oracle.com from the CJE created pods? If so can you provide me the details ?

Thanks 
Anand
Comment 16 Mikaël Barbero CLA 2018-09-20 00:42:57 EDT
(In reply to Anand Francis Joseph from comment #15)
> (In reply to Mikaël Barbero from comment #14)
> > (In reply to Anand Francis Joseph from comment #12)
> > > I removed the problematic image (james/linora). But now the cts-ci image is
> > > failing with the following error :
> > > 
> > > Waiting (ErrImagePull) : rpc error: code = Unknown desc = write
> > > /var/lib/docker/tmp/GetImageBlob220058426: no space left on device
> > > 
> > > Link:
> > > https://jenkins.eclipse.org/jakartaee-tck/plannedAgents/kubernetes/cts-ci-
> > > pod-657307d3-0261-4db2-b3f7-5fc7004140f8-fsqfs-2h7cr/
> > > 
> > > 
> > > Looks like there is some issue in this CJE instance.
> > 
> > One of our cluster's node ran out of disk space. It has been taken down
> > while we figure out why. Please try again.
> 
> The pod creation is successful now. Can you provide me access to upload
> Jakarta EE TCK binary bundle to a location in Eclipse download server.
> Something like
> https://www.eclipse.org/downloads/jakartaee-tck/8.0.1/javaeects-8.0.
> 1_15Sep2018.zip
> or
> https://download.eclipse.org/jakartaee-tck/8.0.1/javaeects-8.0.1_15Sep2018.
> zip

I've sent you the details how to upload stuff there via email.

> For GF we would still continue to download from oracle link,(till the time
> its available in Eclipse download server). The idea is to validate that we
> are able to run the Jakarta EE TCK against GF and this is not for the
> official certification. Is there some proxy required to access the site
> http://download.oracle.com from the CJE created pods? If so can you provide
> me the details ?

No proxy is required, you should be able to download stuff from anywhere on the internet, including download.oracle.com
Comment 17 Anand Francis Joseph CLA 2018-09-20 08:11:32 EDT
I am able to place the bundle and trigger a run. I also integrated the mail server bundle after correcting the root user commands. However, I am facing a new issue now. The build stage fails waiting for the container to be ready. I do not see any issue with the Kubernetes pod. Am not able to figure out what is happening here.

Job Output : 
https://jenkins.eclipse.org/jakartaee-tck/blue/organizations/jenkins/jakartaee-tck/detail/master/13/pipeline/
Comment 18 Mikaël Barbero CLA 2018-09-20 09:32:45 EDT
Created attachment 275908 [details]
container log

The james-mail container is failing to properly start: 

He can't create /var/store/derby and does not find /logs/james.log

Please find attached the container log for more details.
Comment 19 Anand Francis Joseph CLA 2018-09-20 10:37:17 EDT
(In reply to Mikaël Barbero from comment #18)
> Created attachment 275908 [details]
> container log
> 
> The james-mail container is failing to properly start: 
> 
> He can't create /var/store/derby and does not find /logs/james.log
> 
> Please find attached the container log for more details.

Thanks for the logs. I was able to resolve the issue. Had to give non root access to 2 more folders /var and /logs. Now the job is able to proceed.
Comment 20 Anand Francis Joseph CLA 2018-09-21 05:45:15 EDT
I am able to run the CTS test suites and getting clean results for some of the suites which I ran. 

Is there any restriction on the maximum number of parallel stages that can run. 
CTS uses 1 build starge and 52 parallel run stages.

I created a job with 8 parallel stages and did not notice any issue. However, when I created a job with more parallel stages (~40), I noticed that Jenkins instance crashed. I am not sure if it was caused due to more number of parallel stages or due to some other reason. Yesterday also I noticed Jenkins getting crashed around the same time and the home page showing "Please wait while Jenkins is getting ready to work". Can you investigate the cause ? Is it due to some periodic maintanance, since it happend around the same time yesterday as well.

Thanks
Anand.
Comment 21 Mikaël Barbero CLA 2018-09-21 05:54:57 EDT
(In reply to Anand Francis Joseph from comment #20)
> I am able to run the CTS test suites and getting clean results for some of
> the suites which I ran. 

Great news! Thanks for the feedbacks!

> Is there any restriction on the maximum number of parallel stages that can
> run. 
> CTS uses 1 build starge and 52 parallel run stages.
> 
> I created a job with 8 parallel stages and did not notice any issue.
> However, when I created a job with more parallel stages (~40), I noticed
> that Jenkins instance crashed. I am not sure if it was caused due to more
> number of parallel stages or due to some other reason. 

You most probably faced an out-of-memory with such number of stages. I've increased the allocated memory and restarted the instance.

> Yesterday also I
> noticed Jenkins getting crashed around the same time and the home page
> showing "Please wait while Jenkins is getting ready to work". Can you
> investigate the cause ? Is it due to some periodic maintanance, since it
> happend around the same time yesterday as well.
> 
> Thanks
> Anand.

Could be. With all the instances we have to create these days, we discover unplanned maintenance tasks that we need to do on some of the cluster nodes. To do that, we first drain the node, and if your master is running on it, it is killed. It is re-scheduled on a new node immediately, but you experience a short downtime. Thanks for you patience, things should settle down in the coming days.
Comment 22 Anand Francis Joseph CLA 2018-09-21 06:18:27 EDT
(In reply to Mikaël Barbero from comment #21)
> (In reply to Anand Francis Joseph from comment #20)
> > I am able to run the CTS test suites and getting clean results for some of
> > the suites which I ran. 
> 
> Great news! Thanks for the feedbacks!
> 
> > Is there any restriction on the maximum number of parallel stages that can
> > run. 
> > CTS uses 1 build starge and 52 parallel run stages.
> > 
> > I created a job with 8 parallel stages and did not notice any issue.
> > However, when I created a job with more parallel stages (~40), I noticed
> > that Jenkins instance crashed. I am not sure if it was caused due to more
> > number of parallel stages or due to some other reason. 
> 
> You most probably faced an out-of-memory with such number of stages. I've
> increased the allocated memory and restarted the instance.
> 
> > Yesterday also I
> > noticed Jenkins getting crashed around the same time and the home page
> > showing "Please wait while Jenkins is getting ready to work". Can you
> > investigate the cause ? Is it due to some periodic maintanance, since it
> > happend around the same time yesterday as well.
> > 
> > Thanks
> > Anand.
> 
> Could be. With all the instances we have to create these days, we discover
> unplanned maintenance tasks that we need to do on some of the cluster nodes.
> To do that, we first drain the node, and if your master is running on it, it
> is killed. It is re-scheduled on a new node immediately, but you experience
> a short downtime. Thanks for you patience, things should settle down in the
> coming days.

Thanks for the clarification. I ll split the number of parallel runs to a manageable number so that I do not load the system. Thanks for all your help and support. Appreciate it.
Comment 23 Denis Roy CLA 2018-09-21 09:11:40 EDT
This is awesome news. Many thanks to Fred and Mikael for the rapid responses, and to the Oracle build teams for their patience and perseverance. Well done!
Comment 24 Anand Francis Joseph CLA 2018-09-22 01:19:53 EDT
Some parallel runs fail with a weird error. Not sure of the cause. I tried 6 suites and one failed. If I submit around 10 suites, then 3 or 4 suites, fail with this error.

-----------------------------------------------------
[jakartaee-tck_master-M5QQ24N5SVVYX5KB3WEGZPMN4DNYF7IYAKOEXU5EKNOPHEJ3KEFA] Running shell script

process apparently never started in /home/jenkins/workspace/jakartaee-tck_master-M5QQ24N5SVVYX5KB3WEGZPMN4DNYF7IYAKOEXU5EKNOPHEJ3KEFA@tmp/durable-1016dc0b

script returned exit code -2
-----------------------------------------------------

Job Link: https://jenkins.eclipse.org/jakartaee-tck/blue/organizations/jenkins/jakartaee-tck/detail/master/28/pipeline/

https://jenkins.eclipse.org/jakartaee-tck/blue/organizations/jenkins/jakartaee-tck/detail/master/24/pipeline/
Comment 25 Anand Francis Joseph CLA 2018-09-22 03:08:08 EDT
Sometimes, the POD get disconnected in between the job execution.
-------------------------------------------------------------------------

Cannot contact cts-ci-pod-1079b5a9-9de7-4cf6-bfc4-562557bf1687-0k8gl-37zx4: java.lang.InterruptedException

java.io.EOFException

	at okio.RealBufferedSource.require(RealBufferedSource.java:60)

	at okio.RealBufferedSource.readByte(RealBufferedSource.java:73)

	at okhttp3.internal.ws.WebSocketReader.readHeader(WebSocketReader.java:113)

	at okhttp3.internal.ws.WebSocketReader.processNextFrame(WebSocketReader.java:97)

	at okhttp3.internal.ws.RealWebSocket.loopReader(RealWebSocket.java:265)

	at okhttp3.internal.ws.RealWebSocket$2.onResponse(RealWebSocket.java:204)

	at okhttp3.RealCall$AsyncCall.execute(RealCall.java:153)

	at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

	at java.lang.Thread.run(Thread.java:748)

-------------------------------------------------------------------------
Comment 26 Mikaël Barbero CLA 2018-09-24 05:08:07 EDT
Are you still seeing such errors?
Comment 27 Anand Francis Joseph CLA 2018-09-24 05:48:39 EDT
(In reply to Mikaël Barbero from comment #26)
> Are you still seeing such errors?

Yes. Till yesterday (23rd Septermber), I was seeing such errors.
https://jenkins.eclipse.org/jakartaee-tck/job/jakartaee-tck/job/master/29/
Some of the run stages hangs in between, saying lost connection to POD. I have to abort the job. Today, I had created a job with 3 suites, its still running I have not seen the issue so far in that job. Not sure if such errors happen when there are more number of suites running in parallel.

https://jenkins.eclipse.org/jakartaee-tck/job/jakartaee-tck/job/master/30/
Comment 28 Mikaël Barbero CLA 2018-09-24 05:55:42 EDT
Thanks for the feedbacks.

On https://jenkins.eclipse.org/jakartaee-tck/, I see "Build Queue (13)" and the list contains stuff from build #23. Is it ok for me to remove those?
Comment 29 Anand Francis Joseph CLA 2018-09-24 06:06:53 EDT
(In reply to Mikaël Barbero from comment #28)
> Thanks for the feedbacks.
> 
> On https://jenkins.eclipse.org/jakartaee-tck/, I see "Build Queue (13)" and
> the list contains stuff from build #23. Is it ok for me to remove those?

Yes, You can remove those. This behavior is also something that I observed. After a Jenkins restart, the jobs try to reconnect to the pods and it tries to continue from where it has left. But it never is able to connect to the pod and keeps hanging. Even if I abort that particular jobs, these entries are still present.

Also is there a way to timeout a stage if its not able to connect to the pod, or if the pod connection goes off intermittently. Right now, that particular stage keeps hanging forever and I have to manually abort the job. Still some of the cleanup does not happen, like the ones in Build Queue.
Comment 30 Mikaël Barbero CLA 2018-09-24 06:24:10 EDT
Restart of pipeline jobs when Jenkins restarts is a feature from pipeline. There used to be an issue (https://issues.jenkins-ci.org/browse/JENKINS-47476) but we're running a version including the fix. I will need to investigate a bit more why it can't reconnect / can't re-create the pod.


As a side note, for better performances, you should try to add 

options {
...
        durabilityHint('PERFORMANCE_OPTIMIZED')
...
    }

to your pipeline.
Comment 31 Mikaël Barbero CLA 2018-09-25 05:37:42 EDT
What Maven groupId(s?) this project is(are?) using?
Comment 32 Anand Francis Joseph CLA 2018-09-29 11:46:24 EDT
(In reply to Mikaël Barbero from comment #31)
> What Maven groupId(s?) this project is(are?) using?

Jakarata EE TCK is ant based and we do not have any existing groupId for it so far.
Comment 33 Anand Francis Joseph CLA 2018-09-29 12:03:27 EDT
The JAXR suite requires JWSDP 1.3 or JWSDP 1.5 which has a UDDI registry. This registry works only with J2SE 1.4.

More info can be found in the below release notes.
https://docs.oracle.com/cd/E17802_01/webservices/webservices/docs/2.0/ReleaseNotes.html#KnownIssues

But this version of JDK, is old and does not work inside a docker container. It aborts with a core dump. The J2SE 1.4 binary is 32 bit (i686) and has issue when run inside docker container. However, the same would work if setup in a VM. Is it possible to create a VM based setup just for hosting the JWSDP server (v1.3 or v1.5)? I can do the installation steps if its possible to get a VM for this purpose ?
Comment 34 Mikaël Barbero CLA 2018-09-29 12:05:58 EDT
What are the requirements for this VM in terms of vCPU/RAM?
Comment 35 Anand Francis Joseph CLA 2018-09-29 12:41:24 EDT
(In reply to Mikaël Barbero from comment #34)
> What are the requirements for this VM in terms of vCPU/RAM?

IMO, It should work with minimal vCPU/RAM. Probably 1vCPU and 4GB RAM should be sufficient.
Comment 36 Mikaël Barbero CLA 2018-10-02 06:23:40 EDT
I've added an dedicated agent https://jenkins.eclipse.org/jakartaee-tck/computer/k48hz-jakartaee-tck-agent-01/ 

It has a label "j2sdk1.4"

A JDK tool is configured oracle-jdk1.4=/opt/tools/java/oracle/jdk-1.4/1.4.2_19


$ /opt/tools/java/oracle/jdk-1.4/1.4.2_19/bin/java -version
java version "1.4.2_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_19-b04)
Java HotSpot(TM) Client VM (build 1.4.2_19-b04, mixed mode)
Comment 37 Anand Francis Joseph CLA 2018-10-03 01:18:58 EDT
(In reply to Mikaël Barbero from comment #36)
> I've added an dedicated agent
> https://jenkins.eclipse.org/jakartaee-tck/computer/k48hz-jakartaee-tck-agent-
> 01/ 
> 
> It has a label "j2sdk1.4"
> 
> A JDK tool is configured
> oracle-jdk1.4=/opt/tools/java/oracle/jdk-1.4/1.4.2_19
> 
> 
> $ /opt/tools/java/oracle/jdk-1.4/1.4.2_19/bin/java -version
> java version "1.4.2_19"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_19-b04)
> Java HotSpot(TM) Client VM (build 1.4.2_19-b04, mixed mode)

What is the hostname of this server ? Also can we do an SSH to this server from outside the jenkins instance ? 

I need to install JWSDP and start it. Probably I can create a jenkins job using the node selector label 'j2sdk1.4' to do that. It would run on http port 8080. I would be using this URL for JAXR suite. So I need the hostname to use for that URL.

Thanks
Anand.
Comment 38 Mikaël Barbero CLA 2018-10-03 03:22:28 EDT
(In reply to Anand Francis Joseph from comment #37)
> What is the hostname of this server ? Also can we do an SSH to this server
> from outside the jenkins instance ? 

This machine is only reachable as an agent.

> I need to install JWSDP and start it. Probably I can create a jenkins job
> using the node selector label 'j2sdk1.4' to do that. It would run on http
> port 8080. I would be using this URL for JAXR suite. So I need the hostname
> to use for that URL.
> 
> Thanks
> Anand.

I misunderstood your requirement. Back to your original comment: what the issue with running java 1.4 in docker image? I've done the following Dockerfile

FROM ubuntu:18.04

ADD j2sdk-1_4_2_19-linux-i586.bin .

RUN dpkg --add-architecture i386 \
	&& apt-get update && apt-get install -y \
		curl \
		libc6:i386 \
		libncurses5:i386 \
		libstdc++6:i386  \
		multiarch-support \
		--no-install-recommends \
	&& rm -rf /var/lib/apt/lists/* \
	&& echo "y" | sh j2sdk-1_4_2_19-linux-i586.bin \
	&& mkdir -p /opt/java \
	&& mv j2sdk1.4.2_19 /opt/java/

ENTRYPOINT [ "/opt/java/j2sdk1.4.2_19/bin/java", "-version" ]

After building it ($ docker build .), here is what I get:

$ docker run 7955821c69f0
java version "1.4.2_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_19-b04)
Java HotSpot(TM) Client VM (build 1.4.2_19-b04, mixed mode)

Looks pretty functional to me, but I may miss something. 

Note that the "ADD" command in the dockerfile above requires you to download the j2sdk binary by yourself (you need to be logged in with your oracle account to download java archive...)

Does it solve your issue?
Comment 39 Mikaël Barbero CLA 2018-10-03 03:23:40 EDT
Some tweaks to the dockerfile above:

FROM ubuntu:18.04

ADD j2sdk-1_4_2_19-linux-i586.bin .

RUN dpkg --add-architecture i386 \
	&& apt-get update && apt-get install -y \
		libc6:i386 \
		libncurses5:i386 \
		libstdc++6:i386  \
		multiarch-support \
		--no-install-recommends \
	&& rm -rf /var/lib/apt/lists/* \
	&& echo "y" | sh j2sdk-1_4_2_19-linux-i586.bin \
	&& rm j2sdk-1_4_2_19-linux-i586.bin \
	&& mkdir -p /opt/java \
	&& mv j2sdk1.4.2_19 /opt/java/

ENTRYPOINT [ "/opt/java/j2sdk1.4.2_19/bin/java", "-version" ]
Comment 40 Anand Francis Joseph CLA 2018-10-03 07:21:55 EDT
(In reply to Mikaël Barbero from comment #39)
> Some tweaks to the dockerfile above:
> 
> FROM ubuntu:18.04
> 
> ADD j2sdk-1_4_2_19-linux-i586.bin .
> 
> RUN dpkg --add-architecture i386 \
> 	&& apt-get update && apt-get install -y \
> 		libc6:i386 \
> 		libncurses5:i386 \
> 		libstdc++6:i386  \
> 		multiarch-support \
> 		--no-install-recommends \
> 	&& rm -rf /var/lib/apt/lists/* \
> 	&& echo "y" | sh j2sdk-1_4_2_19-linux-i586.bin \
> 	&& rm j2sdk-1_4_2_19-linux-i586.bin \
> 	&& mkdir -p /opt/java \
> 	&& mv j2sdk1.4.2_19 /opt/java/
> 
> ENTRYPOINT [ "/opt/java/j2sdk1.4.2_19/bin/java", "-version" ]

I think the issue is more to do with the base kernel of DOCKER_HOST. I still get core dump with the image, I had built with docker running on OEL 7.5, using a slightly modified version of the Dockerfile you had provided.

--------------------------
docker run --rm -it fd821ba50d11
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  SIGBUS (0x7) at pc=0xf759239a, pid=1, tid=4149339904
#
# Java VM: Java HotSpot(TM) Client VM (1.4.2_19-b04 mixed mode)
# Problematic frame:
------------------------------

------------------------------
uname -a
Linux xxxxx 4.1.12-112.14.13.el7uek.x86_64 #2 SMP Thu Jan 18 11:38:29 PST 2018 x86_64 x86_64 x86_64 GNU/Linux
------------------------------

Dockerfile
----------------------------------
FROM ubuntu:18.04

ADD j2sdk-1_4_2_19-linux-i586.bin .
ADD jwsdp-1.3.tar /opt/

RUN export http_proxy=http://xxxxxx:80/ && \
    export https_proxy=http://xxxxxxx:80/ && \
           dpkg --add-architecture i386 \
        && apt-get update && apt-get install -y \
                curl \
                libc6:i386 \
                libncurses5:i386 \
                libstdc++6:i386  \
                multiarch-support \
                --no-install-recommends \
        && rm -rf /var/lib/apt/lists/* \
        && echo "y" | sh j2sdk-1_4_2_19-linux-i586.bin \
        && mkdir -p /opt/java \
        && mv j2sdk1.4.2_19 /opt/java/

ENTRYPOINT [ "/opt/java/j2sdk1.4.2_19/bin/java", "-version" ]
----------------------------------
Comment 41 Mikaël Barbero CLA 2018-10-03 07:26:36 EDT
Could you please try running your image adding the following option to docker

 --shm-size=128m (default is 64m)

if it fails again, try with --shm-size=256m 

Thanks.
Comment 42 Anand Francis Joseph CLA 2018-10-12 05:20:11 EDT
(In reply to Mikaël Barbero from comment #41)
> Could you please try running your image adding the following option to docker
> 
>  --shm-size=128m (default is 64m)
> 
> if it fails again, try with --shm-size=256m 
> 
> Thanks.

Hi Mikael,
I managed to create a docker image with JDK 1.4 using CentOS 7 base image and was able to run the JWSDP server and jaxr tests within it. The tests are passing. You can delete the agent instance that was created for this purpose as its no longer required.
https://jenkins.eclipse.org/jakartaee-tck/computer/k48hz-jakartaee-tck-agent-01/
Comment 43 Mikaël Barbero CLA 2018-10-12 16:33:58 EDT
Thanks for the feedbacks. Was the --shm-size the way to go? 

I've removed the agent.
Comment 44 Anand Francis Joseph CLA 2018-10-14 22:16:00 EDT
(In reply to Mikaël Barbero from comment #43)
> Thanks for the feedbacks. Was the --shm-size the way to go? 
> 
> I've removed the agent.

I did not try that option. I just tried a different machine having a different kernel version as it was easier for me and in the new kernel, I did not observe any core dump issue with JDK 1.4

uname -a
Linux 146a33adcf3e 4.9.93-linuxkit-aufs #1 SMP Wed Jun 6 16:55:56 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux