cancel
Showing results for 
Search instead for 
Did you mean: 

J2EE Engine Administrator Error

Former Member
0 Kudos

I am doing JMS testing using the J2EE Engine Administrator. I have gotten the JMS messaging to work, but after the JMS tests run for about an hour, the J2EE Engine apparently ides, and the JMS messaging stops working

I went to the J2EE Engine, and the java GUI was blank, so I killed it using the Task manager, and brought it up again, it asked to connect, so I clicked on 'default' like always, then it asked for the password, I entered it.

At that point the J2EE Engine is up, but left hand panel does not have any entreis in it (It should have 2 entries 'Services', and I think 'dispatch' or something like that).

SO I closed the J2EE Engine Administrator, and restarted the SAP using the SAP MMC (Rt click on 'SAP Systems', and hit 'start')

I invoked the J2EE Engine Administrator again, but it still shows a blank left hand panel, after I click on 'default' and enter the password.

I am using version 6.40, and the problem occurs about after an hour of testing JMS messages (express mode). I drain the messages after every test, so there should be no queue build up.

Any ideas ?

Thanks, John

Accepted Solutions (0)

Answers (16)

Answers (16)

Former Member
0 Kudos

I have same issue, I am able to connecte Online Config tool but J2ee Visual Admin is not able connect, it is hanging at 99%.

I would appreicate if you could let me know solution

Thanks

Former Member
0 Kudos

I read the OSS note above, and I also read OSS 710146 on how to access the config tol

I got to the config tool, it looks good, however I have 2 problems:

1> I get the following screen on the config tool when searching for places to change java parameters:

- cluster-data

The following is displayed in the left hand panel of the config tool:

- displatcher

+ managers

+ servers

- server

+ managers

+ servers

- Instance ID9999

+ dispatcher_ID9999

+ server_ID9999

The "- dispatcher", "-Server", and "- Instance ID" nodes all have a "General" screen in the right hand panel when

you click on them that contains fields that allow you to change the max Heap size, and the java parameters

1> which do I want to modify ?

I want to make J2EE JMS more stable and faster, so I want JMS to have a large heap, but I see references to JMS in the subnodes contained in all three of these higher level nodes ("- dispatcher", "-Server", and "- Instance ID")

Any ideas ?

2> Also, how do I restart a cluster? The config tool says I need to restart the cluster in order for the changes to take effect. Is that as simple as going to the MMC and stopping and starting the "SAP_Systems" node ?

Thanks, John

Former Member
0 Kudos

Hi ,

I am sending the contents of the note:

Symptom

This note describes recommended JVM settings for EP6 SP3 and higher.

This set of recommendations is also appliable for other standard SAP J2EE applications, for example XI, CRM, etc., running on SAP J2EE Engine 6.40/7.0.

Other terms

tuning memory j2ee portal

Reason and Prerequisites

j2ee

Solution

The information in this note is relevant if you don't use the configuration template (see note 739788) or if you want to manually configure your portal installation.

Configuration templates are only appliable to newly installed systems based on the J2EE Engine 6.40 SP7 (corresponds to NetWeaver'04 SP Stack 04) or above.

For all other systems you have to configure JVM settings as described below.

Before starting manual configuration please read the following notes:

709140 Recommended JDK and VM Settings for the WebAS630/640

716604 for the Sun JDK (Windows, Linux, Solaris)

716926 for the HP JDK (HP-UX)

722520 for the Tru64 JDK

716927 for the IBM JDK (AIX)

717376 for the IBM JDK (iSeries, OS/400)

746299 for the IBM JDK (zSeries)

746203 for the IBM JDK (zOS)

810008 for the IBM JDK (Linux on POWER)

861215 for the IBM JDK (AMD64/EM64T-Linux)

Since the above notes only take into account the "default" SAP J2EE installation some parameters must be set differently for an EP6 installation.

The java parameters have to be set via ConfigTool, see note 710146.

1. Java version

It should be the most actual one from the 1.4 family, currently (state July 2005) it is 1.4.2. J2EE Engine 6.40/7.0 is not supported on 1.3 or 1.5 Java plattform.

Details can be found in the above OS-specific notes.

Refer to note 718901 about changing of the JDK, see also 731269.

Please apply note 754699 after JDK upgrade.

2. Heap size

2.1 We recommend to start the server nodes with 1GB whereby the initial and the maximal heap size should be equal: -Xmx1024m -Xms1024m

Higher values may cause troubles, for example see notes 736462 and 664607 about Windows DLLs preventing big java heap.

We recommend using additional server nodes instead of huge heaps.

2.2 For dispatcher nodes it's enough to set the heap size to 170m, there is no need to apply the parameters mentioned under 4-9 below.

Default size of the young generation (one third of the heap) is ok for dispatchers.

If the instance contains more than three server nodes we recommend to add 50MB of dispatcher heap for each additional server node.

2.3 The heap size of all Java server nodes must fit completely into the physical memory in order to avoid heavy paging on OS level. You must also consider the space needed for OS and other processes. For each JavaVM on the server, all Java memory must fit completely into physical memory (no paging)!

Therefore the rule of thumb for number of server nodes for SUN and HP JavaVM with 1 GB Heap each will be

#ServerNodes = (AvailableMemory / 1.5 GB)

3. Verbose GC

Please always use -verbose:gc option.

The below paragraphs 4-8 only apply for HotSpot VM, i.e. Windows, Solaris, HP and Linux (with SUN JDK) but not for IBM platforms or True64

Special remark for AIX: please refer to Note 716927 for advanced tuning of EP and XI.

4. Client or Server VM?

We recommend using Server VM, it's default in most cases.

Since the Client VM is not available for some platforms (usually a 64-bit VM only has the Server variant) we can't switch to the Client VM as it was recommended for EP6 SP2 running on JDK 1.3.1.

The Server VM crashes should be reported to the VM provider (SUN or HP) and investigated. In some cases they can be avoided by excluding some classes from compilation (e.g. note 716926). For this purpose we recommend -XX:+PrintCompilation flag.

Remark 1: please don't use "-server" or "-client" command line parameters, SAP J2EE Startup Framework doesn't accept them. The VM type should be set by the entry jstartup/vm/type in the instance profile, e.g. jstartup/vm/type=server, if necessary.

Remark 2: R/3 profile maintenance transaction is not aware about above jstartup/vm/type parameter, therefore you have to add it manually.

Remark 3: You don't really need to select Server VM explicitly because SAP J2EE Startup Framework loads it by default. This option is not for the Java VM itself but for java launcher (e.g. java.exe or Startup Framework) that decides which jvm.dll (or libjvm.so) should be loaded. Server VM is the default choice for java launcher on almost all plattforms with some exceptions like 32-bit Windows, and on some plattforms it is the only available choice. Anyway, Startup Framework loads Server VM by default unless instance profile entry jstartup/vm/type is set to a different type. Compare with note 722520 about True64 where the above profile entry should be set to fast64.

5. New Generation

5.1 NewSize

As before (compare to note 696410) we recommend setting both NewSize and MaxNewSize to approximately 1/6 of the heap:

-XX:NewSize=160m -XX:MaxNewSize=160m

5.2 Survival Space

We recommend -XX:SurvivorRatio=2 -XX:TargetSurvivorRatio=90

The first options controls how big is eden space compared to survivor space (the latter contains two semispaces); the second option sets the desired percentage of the survivor space heap which must be used before objects are promoted to the old generation.

6. Permanent Space

For 6.40: -XX:MaxPermSize=192m -XX:PermSize=192m

Be aware of the fact that more permanent space is needed if additional applications are deployed or the complexity of the applications (roughly speaking number of classes) grows.

For 7.0: -XX:MaxPermSize=256m -XX:PermSize=256m

Remark: increasing of the heap size or permanent space is harmless on 64 bit systems, however on 32 bit ones (especially Windows) one should take into account limitations of the virtual address space, see notes 664607 and 736462.

7. Garbage Collector options

7.1 Parallel minor GC

JDK 1.4 contains several implementations of the garbage collector.

We recommend -XX:+UseParNewGC option. It parallelize (and thefore accelerates) minor GCs.

Remark: UseParNewGC doesn't work and therefore shouldn't be used with JDK 1.4.2_07 or older on Windows2003/IA64 platform (see note 716604 for details)

7.2 Other non-standard GC options

We still do NOT recommend -XX:+UseConcMarkSweepGC (it caused VM crashes in earlier JDK 1.4.2 versions) but we're re-evauating it now based on most actual JDKs.

7.3 GC utility options

Please set also -XX:+PrintGCTimeStamps (available since JDK 1.4).

In problem case please always use also the following options:

-XX:PrintGCDetails -XX:PrintTenuringDistribution

7.4 Thread local allocation

We recommend -XX:+UseTLAB option which switches on thread local allocation of objects. On Solaris and HP-UX you don't need to specify this switch explicitly (it's used by default) but it doesn't harm also if you set it. On Windows and Linux you have to do this explicitly.

8. SoftReferences

-XX:SoftRefLRUPolicyMSPerMB=1 is still recommended

9. KM Settings

9.1 Disable canonicalization optimization

When using Knowledge Management the setting -Dsun.io.useCanonCaches=false

is required to guarantee functional correctness of CM repositories and file system repositories with file system persistence.

9.2 Thumbnail generation on Linux and UNIX platforms

Image generation for JSP and servlet applications on Linux, Solaris, AIX and HP-UX must run in a "headless" environment - that is, on a computer that lacks framebuffer hardware. This is not needed (but doesn't harm if set) for Windows.

Headless mode must explicitly be enabled as follows:

-Djava.awt.headless=true

Former Member
0 Kudos

Hi,

I am sending the contents of the note.

Symptom

This note describes recommended JVM settings for EP6 SP3 and higher.

This set of recommendations is also appliable for other standard SAP J2EE applications, for example XI, CRM, etc., running on SAP J2EE Engine 6.40/7.0.

Other terms

tuning memory j2ee portal

Reason and Prerequisites

j2ee

Solution

The information in this note is relevant if you don't use the configuration template (see note 739788) or if you want to manually configure your portal installation.

Configuration templates are only appliable to newly installed systems based on the J2EE Engine 6.40 SP7 (corresponds to NetWeaver'04 SP Stack 04) or above.

For all other systems you have to configure JVM settings as described below.

Before starting manual configuration please read the following notes:

709140 Recommended JDK and VM Settings for the WebAS630/640

716604 for the Sun JDK (Windows, Linux, Solaris)

716926 for the HP JDK (HP-UX)

722520 for the Tru64 JDK

716927 for the IBM JDK (AIX)

717376 for the IBM JDK (iSeries, OS/400)

746299 for the IBM JDK (zSeries)

746203 for the IBM JDK (zOS)

810008 for the IBM JDK (Linux on POWER)

861215 for the IBM JDK (AMD64/EM64T-Linux)

Since the above notes only take into account the "default" SAP J2EE installation some parameters must be set differently for an EP6 installation.

The java parameters have to be set via ConfigTool, see note 710146.

1. Java version

It should be the most actual one from the 1.4 family, currently (state July 2005) it is 1.4.2. J2EE Engine 6.40/7.0 is not supported on 1.3 or 1.5 Java plattform.

Details can be found in the above OS-specific notes.

Refer to note 718901 about changing of the JDK, see also 731269.

Please apply note 754699 after JDK upgrade.

2. Heap size

2.1 We recommend to start the server nodes with 1GB whereby the initial and the maximal heap size should be equal: -Xmx1024m -Xms1024m

Higher values may cause troubles, for example see notes 736462 and 664607 about Windows DLLs preventing big java heap.

We recommend using additional server nodes instead of huge heaps.

2.2 For dispatcher nodes it's enough to set the heap size to 170m, there is no need to apply the parameters mentioned under 4-9 below.

Default size of the young generation (one third of the heap) is ok for dispatchers.

If the instance contains more than three server nodes we recommend to add 50MB of dispatcher heap for each additional server node.

2.3 The heap size of all Java server nodes must fit completely into the physical memory in order to avoid heavy paging on OS level. You must also consider the space needed for OS and other processes. For each JavaVM on the server, all Java memory must fit completely into physical memory (no paging)!

Therefore the rule of thumb for number of server nodes for SUN and HP JavaVM with 1 GB Heap each will be

#ServerNodes = (AvailableMemory / 1.5 GB)

3. Verbose GC

Please always use -verbose:gc option.

The below paragraphs 4-8 only apply for HotSpot VM, i.e. Windows, Solaris, HP and Linux (with SUN JDK) but not for IBM platforms or True64

Special remark for AIX: please refer to Note 716927 for advanced tuning of EP and XI.

4. Client or Server VM?

We recommend using Server VM, it's default in most cases.

Since the Client VM is not available for some platforms (usually a 64-bit VM only has the Server variant) we can't switch to the Client VM as it was recommended for EP6 SP2 running on JDK 1.3.1.

The Server VM crashes should be reported to the VM provider (SUN or HP) and investigated. In some cases they can be avoided by excluding some classes from compilation (e.g. note 716926). For this purpose we recommend -XX:+PrintCompilation flag.

Remark 1: please don't use "-server" or "-client" command line parameters, SAP J2EE Startup Framework doesn't accept them. The VM type should be set by the entry jstartup/vm/type in the instance profile, e.g. jstartup/vm/type=server, if necessary.

Remark 2: R/3 profile maintenance transaction is not aware about above jstartup/vm/type parameter, therefore you have to add it manually.

Remark 3: You don't really need to select Server VM explicitly because SAP J2EE Startup Framework loads it by default. This option is not for the Java VM itself but for java launcher (e.g. java.exe or Startup Framework) that decides which jvm.dll (or libjvm.so) should be loaded. Server VM is the default choice for java launcher on almost all plattforms with some exceptions like 32-bit Windows, and on some plattforms it is the only available choice. Anyway, Startup Framework loads Server VM by default unless instance profile entry jstartup/vm/type is set to a different type. Compare with note 722520 about True64 where the above profile entry should be set to fast64.

5. New Generation

5.1 NewSize

As before (compare to note 696410) we recommend setting both NewSize and MaxNewSize to approximately 1/6 of the heap:

-XX:NewSize=160m -XX:MaxNewSize=160m

5.2 Survival Space

We recommend -XX:SurvivorRatio=2 -XX:TargetSurvivorRatio=90

The first options controls how big is eden space compared to survivor space (the latter contains two semispaces); the second option sets the desired percentage of the survivor space heap which must be used before objects are promoted to the old generation.

6. Permanent Space

For 6.40: -XX:MaxPermSize=192m -XX:PermSize=192m

Be aware of the fact that more permanent space is needed if additional applications are deployed or the complexity of the applications (roughly speaking number of classes) grows.

For 7.0: -XX:MaxPermSize=256m -XX:PermSize=256m

Remark: increasing of the heap size or permanent space is harmless on 64 bit systems, however on 32 bit ones (especially Windows) one should take into account limitations of the virtual address space, see notes 664607 and 736462.

7. Garbage Collector options

7.1 Parallel minor GC

JDK 1.4 contains several implementations of the garbage collector.

We recommend -XX:+UseParNewGC option. It parallelize (and thefore accelerates) minor GCs.

Remark: UseParNewGC doesn't work and therefore shouldn't be used with JDK 1.4.2_07 or older on Windows2003/IA64 platform (see note 716604 for details)

7.2 Other non-standard GC options

We still do NOT recommend -XX:+UseConcMarkSweepGC (it caused VM crashes in earlier JDK 1.4.2 versions) but we're re-evauating it now based on most actual JDKs.

7.3 GC utility options

Please set also -XX:+PrintGCTimeStamps (available since JDK 1.4).

In problem case please always use also the following options:

-XX:PrintGCDetails -XX:PrintTenuringDistribution

7.4 Thread local allocation

We recommend -XX:+UseTLAB option which switches on thread local allocation of objects. On Solaris and HP-UX you don't need to specify this switch explicitly (it's used by default) but it doesn't harm also if you set it. On Windows and Linux you have to do this explicitly.

8. SoftReferences

-XX:SoftRefLRUPolicyMSPerMB=1 is still recommended

9. KM Settings

9.1 Disable canonicalization optimization

When using Knowledge Management the setting -Dsun.io.useCanonCaches=false

is required to guarantee functional correctness of CM repositories and file system repositories with file system persistence.

9.2 Thumbnail generation on Linux and UNIX platforms

Image generation for JSP and servlet applications on Linux, Solaris, AIX and HP-UX must run in a "headless" environment - that is, on a computer that lacks framebuffer hardware. This is not needed (but doesn't harm if set) for Windows.

Headless mode must explicitly be enabled as follows:

-Djava.awt.headless=true

Former Member
0 Kudos

I got the OSS note, and am trying to change the JVM options. Any idea if I should just change the heap, or should I change all JVM options ?

Thanks, John

Former Member
0 Kudos

Vikas:

What ip address do I go to get an OSS ID and pwd.

Also, could you please pas tthe note 723909 on the forum so I can make the fix?

Thanks, John

Former Member
0 Kudos

Vivek:

I am running a Windows system, not Linux.

I am also not running on a Domain

However, I made the relevant changes to the hosts file on WIndows, but it had no effect

I usually get this problem after running the program file a while (and after I have logged onto the J2EE engine a couple times successfully.

Is there anything else you might suggest?

Thanks, John

Former Member
0 Kudos

Hi John,

The note I was refering is from SAP Market place.

1.go to service.sap.com/notes

2.enter your oss id and owd.

3.then on the right side,type this note number.

4. Read that note and implement the changes.

I hope this will be helpful.

Reply back.

Rgs

vikas

Former Member
0 Kudos

Vikas:

How exactly do you change the heap size of the J2EE engine using the conifg tool

Which Tabs do you use ?

Also, you wrote:

<b>Follow the note 723909 to set the recommended JVM Parameters. </b>

How do I get to note 723909 ?

Thanks, John

Former Member
0 Kudos

Dear Smith,

This problem can be recognized, when trying to connect Visual Administrator or Deploy Tool and the process at the progress bar freezes at 99%. To fix that problem, open your "etc/hosts" configuration file. By default there is the following line in it:

127.0.0.1 localhost.localdomain localhost

To avoid occurrence of this problem, add the following line to the hosts file, giving the real IP address, host name, and domain name.

xxx.xxx.xxx.xxx <real_localhost_name>.<real_localdomain_name>

<real_localhost_name>

Hope this will resolve the issue.

Cheers,

Vivek

Former Member
0 Kudos

Hi Babu,

Follow the note 723909 to set the recommended JVM Parameters.

Also check the pwd. restrictions at your site.

I hope this helps.

Rgs

vikas

Former Member
0 Kudos

Hi Kumar,

Try changing the heap size of the J2EE Engine,this can be done in the Visual admin/config tool.

Teh re-star J2EE engine.

Rgs

vikas

Former Member
0 Kudos

Hi Vikas,

Can you please give me the heap sizes for different compenents?

Former Member
0 Kudos

Hi John,

I got the same problem while working with the SAP J2ee Administrator. It is hanging at 99% and not getting any thing in the left panel.

Did you solve this problem?

Your reply is appreciated.

Thanks,

Kumar

Former Member
0 Kudos

How do I create an OSS message ?

Thanks

Former Member
0 Kudos

Hi,

go to http://service.sap.com/message and follow the instructions on the page.

Former Member
0 Kudos

I encountered the problem again today.

It froze, I restarte the J2EE engine Admin, and it slowly came up, the progress bar got to 91%, and stopped, it gave the following error from the info button:

<b>Login to xseriesa

javax.security.auth.login.LoginException: com.sap.engine.services.security.exceptions.BaseLoginException: User not authorized.</b>

That should not be since I entered the correct ID and have a current license. So I hit the login again, and tried again, I entered the correct password, and this time it got past 91%.

It went all the way to 99% (not 100%, it would not go past 99%), the info button said successful, but when I clicked on JMS Provider, it hung for a while and the screen went blank

I then went to the trace file you mentioned, and foudn this at the end of the trace:

<b>#1.5#0002B3BFCBC9005A00000017000010680003F90E0D97BE76#1118263683013#com.sap.sql.sync.DbTableSyncReader##com.sap.sql.sync.DbTableSyncReader#######SAPEngine_System_Thread[impl:4]_17##0#0#Error#1#/System/Database/sql/sync#Java#com.sap.sql_0003#com.sap.sql.log.OpenSQLResourceBundle#SQL error occured on connection null: code=-9,026, state="S9026", message="[-9026]: System error: BD Bad datapage";

SQL statement is "delete from "BC_SYNCLOG" where "TIMESTMP" < ?".#5#-9026#S9026#[-9026]: System error: BD Bad datapage#<null>#delete from "BC_SYNCLOG" where "TIMESTMP" < ?#

#1.5#0002B3BFCBC9005A00000018000010680003F90E0D97C118#1118263683013#com.sap.sql.sync.DbTableSyncReader##com.sap.sql.sync.DbTableSyncReader#######SAPEngine_System_Thread[impl:4]_17##0#0#Error##Plain###com.sap.dbtech.jdbc.exceptions.DatabaseException: [-9026]: System error: BD Bad datapage

at com.sap.dbtech.jdbc.packet.ReplyPacket.createException(ReplyPacket.java:72)

at com.sap.dbtech.jdbc.ConnectionSapDB.throwSQLError(ConnectionSapDB.java:771)

</b>

Any ideas ?

Thanks, John

Former Member
0 Kudos

Hi John,

sorry, those errors does not show (at least to me) a clue what might be wrong. Maybe this is not a trivial problem, therefore I'd suggest that you contact the SAP support by creating an OSS message about this problem.

Regards,

Ivo

Former Member
0 Kudos

Hi John,

I can't say what could possibly be wrong with your server but can give some hints how to troubleshoot this situation.

To start with, do you get any error messages on the screen when you are connecting with the Visual Administrator, or it just hangs? What's the progress on the status bar (bottom right) on the Visual Administrator screen? Did you press the info button on the left of the progress bar to see if issues any meaningful message?

Next, to investigate why the server dies - sound pretty much as an expired temporary license. Could that be the case? Anyway, have a look at the defaultTrace.trc file under \usr\sap\<SID>\<InstanceName>\j2ee\cluster\server0\log directory for any error messages to indicate the problem. Also, it might be a good idea to have also a look at the dev_jcontrol and dev_bootrap_ID<serverID> files under the \usr\sap\<SID>\<InstanceName>\work directory...

That's enough for a start...