Quantcast

jenkins java.outofmemory:permGen space error

classic Classic list List threaded Threaded
20 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

jenkins java.outofmemory:permGen space error

varghese
 While doing build, i am started getting this error,
i increased the heap size and permgen size to 1024 and 512 mb respectively in catalina_opts and java_opts.Still i am getting this error. I have searched so many blogs, not able to find proper solution.
I am using ubuntu 12.04 64bit.
Heap Dumb i am getting is nearly 600mb for each build..
I am runnning jenkins on tomcat server..while debuging tomcat itself i am getting outofmemory.
Jenkins version is 1.447.1
Is there any fix available for this..
Please reply soon...Very urgent


Thanks

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: jenkins java.outofmemory:permGen space error

Vojtech Juranek
Hi,
is this failure of one particular build or whole Jenkins? Do you increase
pergem size for jenkins of in setup of the build?
Vojta

On Tuesday 26 June 2012 01:28:49 Varghese Renny wrote:

>  While doing build, i am started getting this error,
> i increased the heap size and permgen size to 1024 and 512 mb respectively
> in catalina_opts and java_opts.Still i am getting this error. I have
> searched so many blogs, not able to find proper solution.
> I am using ubuntu 12.04 64bit.
> Heap Dumb i am getting is nearly 600mb for each build..
> I am runnning jenkins on tomcat server..while debuging tomcat itself i am
> getting outofmemory.
> Jenkins version is 1.447.1
> Is there any fix available for this..
> Please reply soon...Very urgent
>
>
> Thanks
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: jenkins java.outofmemory:permGen space error

varghese

No, the whole project i am building. i am using 1.447.1 version for jenkins. i increased the permGen size till 512mb..
Still i am getting this error..getting heap size more than 500mb.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Re: jenkins java.outofmemory:permGen space error

Vojtech Juranek
you have to setup permgen size in project config page. The permgen size
specified in catalina opts for jenkins applies only to jenkins server itself
and doesn't affect permgen size of built project - it run in different JVM

On Tuesday 26 June 2012 02:13:06 Varghese Renny wrote:
> No, the whole project i am building. i am using 1.447.1 version for
> jenkins. i increased the permGen size till 512mb..
> Still i am getting this error..getting heap size more than 500mb.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Re: jenkins java.outofmemory:permGen space error

varghese

In jenkins Whether any config file related to project? I am not getting you which project config file you are mentioning?
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Re: Re: jenkins java.outofmemory:permGen space error

Vojtech Juranek
On Tuesday 26 June 2012 03:10:53 Varghese Renny wrote:
> In jenkins Whether any config file related to project? I am not getting you
> which project config file you are mentioning?

I mean job configuration page, i.e. $JENKINS_URL/job/$JON_NAME/configure
Lets assume it a maven project. In "Advanced" section, there's a MAVEN_OPTS
field. You need to specify JVM setup there, e.g. put -XX:MaxPermSize=512M there
if you want it to be applied during maven build
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Re: Re: jenkins java.outofmemory:permGen space error

varghese


Thank you so much vjuranek..At last my build is successful..As you are a redhat engineer one doubt.. Usually we can run kill as sudo kill -9 pid
But inside the shell script while running it's saying operation not permited..how can simulate sudo inside a shell script?
i started shell for continous integration yesterday...



Thanks,
Regards
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

RE: Re: Re: jenkins java.outofmemory:permGen space error

Stanley, Jason

Inside your shell script, just enter the following:

 

sudo <command>

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Varghese Renny
Sent: Tuesday, June 26, 2012 7:45 AM
To: [hidden email]
Subject: Re: Re: Re: jenkins java.outofmemory:permGen space error

 



Thank you so much vjuranek..At last my build is successful..As you are a redhat engineer one doubt.. Usually we can run kill as sudo kill -9 pid
But inside the shell script while running it's saying operation not permited..how can simulate sudo inside a shell script?
i started shell for continous integration yesterday...



Thanks,
Regards

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Re: Re: jenkins java.outofmemory:permGen space error

varghese

#!/bin/sh
pid=$(pidof postgres)
echo $pid
kill $pid
pg_ctlcluster 8.4 main start


I am doing only this much of thing ...in command prompt i used sudo kill manullay...
but in shell while i executing it's saying operation not permitted
kill : 4 : operation not permitted..
i assume this is some permission problem..How can i resolve that?

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

RE: Re: Re: jenkins java.outofmemory:permGen space error

Stanley, Jason

I am assuming the kill command is failing.

 

Outside of your script, if you have sudo setup correctly, the user who is running the script should be able to run the command:

 

sudo kill <pid #>

 

If that fails, you need to fix the sudoers configuration.

 

In your script, just add ‘sudo’ to the kill command.

 

#!/bin/sh
pid=$(pidof postgres)
echo $pid
sudo kill $pid
pg_ctlcluster 8.4 main start

 

Same goes for the pg_ctlcluster command if sudo needs to get called for that.

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Varghese Renny
Sent: Tuesday, June 26, 2012 8:04 AM
To: [hidden email]
Subject: Re: Re: Re: jenkins java.outofmemory:permGen space error

 


#!/bin/sh
pid=$(pidof postgres)
echo $pid
kill $pid
pg_ctlcluster 8.4 main start


I am doing only this much of thing ...in command prompt i used sudo kill manullay...
but in shell while i executing it's saying operation not permitted
kill : 4 : operation not permitted..
i assume this is some permission problem..How can i resolve that?

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Re: Re: jenkins java.outofmemory:permGen space error

varghese
#!/bin/sh
pid=$(pidof postgres)
echo $pid
kill $pid
pg_ctlcluster 8.4 main start


 Actually this shell script is working if i execute like bash killpostgres.sh
But inside the jenkins it's showing error like

sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: 3 incorrect password attempts


Thanks


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

RE: Re: Re: jenkins java.outofmemory:permGen space error

Stanley, Jason

Ah…I encountered this same problem.

 

In my environment, I have the master/slave configuration.

 

For a workaround, I had Jenkins call this script on the slave machine.

 

For example, let’s call your script pg_cluster.sh

 

I would place this script on the slave machine and in my Jenkins job, I issued the following command:

 

ssh <slave machine> pg_cluster.sh

 

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Varghese Renny
Sent: Tuesday, June 26, 2012 8:16 AM
To: [hidden email]
Subject: Re: Re: Re: jenkins java.outofmemory:permGen space error

 

#!/bin/sh

pid=$(pidof postgres)
echo $pid
kill $pid
pg_ctlcluster 8.4 main start

 Actually this shell script is working if i execute like bash killpostgres.sh
But inside the jenkins it's showing error like


sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: 3 incorrect password attempts


Thanks

 

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: jenkins java.outofmemory:permGen space error

varghese
In reply to this post by varghese


Ok..but i don't have any slave. i am doing it in master only.
i will start it as a new thread..

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

RE: jenkins java.outofmemory:permGen space error

Stanley, Jason

The problem is with sudo being called in Jenkins.

 

You don’t need a slave to workaround this problem…..just call the script located on the master from your Jenkins job.

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Varghese Renny
Sent: Tuesday, June 26, 2012 9:01 AM
To: [hidden email]
Subject: Re: jenkins java.outofmemory:permGen space error

 



Ok..but i don't have any slave. i am doing it in master only.
i will start it as a new thread..

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: RE: Re: Re: jenkins java.outofmemory:permGen space error

Vojtech Juranek
In reply to this post by Stanley, Jason
I guess turning off tty (at least on RHEL like distors switched on by default)
should solve the problem, just comment line
Defaults    requiretty
in /etc/sudoers
Of course you should have setup sudo not to ask passwd (NOPASSWD option)

On Tuesday 26 June 2012 08:23:19 Stanley, Jason wrote:

> Ah...I encountered this same problem.
>
> In my environment, I have the master/slave configuration.
>
> For a workaround, I had Jenkins call this script on the slave machine.
>
> For example, let's call your script pg_cluster.sh
>
> I would place this script on the slave machine and in my Jenkins job, I
> issued the following command:
>
> ssh <slave machine> pg_cluster.sh
>
>
>
> From: [hidden email]
> [mailto:[hidden email]] On Behalf Of Varghese Renny Sent:
> Tuesday, June 26, 2012 8:16 AM
> To: [hidden email]
> Subject: Re: Re: Re: jenkins java.outofmemory:permGen space error
>
> #!/bin/sh
> pid=$(pidof postgres)
> echo $pid
> kill $pid
> pg_ctlcluster 8.4 main start
>
>  Actually this shell script is working if i execute like bash
> killpostgres.sh But inside the jenkins it's showing error like
>
>
>
> sudo: no tty present and no askpass program specified
>
> sudo: no tty present and no askpass program specified
>
> Sorry, try again.
>
> sudo: no tty present and no askpass program specified
>
> sudo: no tty present and no askpass program specified
>
> Sorry, try again.
>
> sudo: no tty present and no askpass program specified
>
> sudo: no tty present and no askpass program specified
>
> Sorry, try again.
>
> sudo: 3 incorrect password attempts
>
>
> Thanks
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: jenkins java.outofmemory:permGen space error

varghese
In reply to this post by Stanley, Jason


Actually i am calling like bash -ex killpostgres.sh
killpostgres.sh is in my project directory.
sudo is inside the shell script
sudo kill $pid

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

RE: jenkins java.outofmemory:permGen space error

Stanley, Jason

In your Jenkins job…enter the following in the script section and then run the job.

 

/path/to/script/killpostgres.sh

 

 

Change /path/to/script to reflect your project directory.

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Varghese Renny
Sent: Tuesday, June 26, 2012 9:05 AM
To: [hidden email]
Subject: Re: jenkins java.outofmemory:permGen space error

 

 

Actually i am calling like bash -ex killpostgres.sh
killpostgres.sh is in my project directory.
sudo is inside the shell script
sudo kill $pid

 

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: jenkins java.outofmemory:permGen space error

varghese
In reply to this post by varghese

I commented Defaults tty so it is showing
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry, try again.
when i uncomment it
sudo: sorry, you must have a tty to run sudo


What can i do?

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: jenkins java.outofmemory:permGen space error

varghese
In reply to this post by Stanley, Jason

Yeah, i changed like /usr/share/tomcat6/.jenkins/Eulen/killpostgres.sh , still i am getting tty not present error and no askpass program specifed.

 



Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: jenkins java.outofmemory:permGen space error

Sami Tikka
You should open a terminal application and enter this command: man sudo

You have problems because your sudo is configured to require a password for the user who is executing sudo.

-- Sami

Varghese Renny kirjoitti 26.6.2012 kello 16.20:

>
> Yeah, i changed like /usr/share/tomcat6/.jenkins/Eulen/killpostgres.sh , still i am getting tty not present error and no askpass program specifed.
>  
>
>

Loading...