BUG: Unable to increase stack size in OJVM
Hi,
I have a complex ADF Faces page (jspx) that has reached the level of complexity that I can reliably cause the JVM to die when running the page with:
Fatal error: Cannot find class java/lang/StackOverflowError
Process exited with exit code -1.when running within JDeveloper. I have tried adding
-Xms1024m -Xmx1024m(yes, I know an outrageous stack size) to the project run properties, and it still crashes. However, if I change to the server JVM instead of ojvm, it works fine, even with a much smaller stack, although the default stack size will crash as well.
So,
1). Shouldn't -Xms and -Xmx work for OJVM? If not, this is going to be a pain when I need to debug, as OJVM rocks for that.
2). Is there some way to configure ADF/OC4J so that I won't bomb like this? I'm guessing that the XML document (JSPX) is big enough that it's causing the XML parser to blow up. Just a guess however.
Thanks,
John
It's unclear if the problems discussed happen after OJC compiles, or Javac compiles, or both. We have uncovered a bug in the compilation of jspx files using OJC. There is a chance that this bug fix will fix the problems mentioned. Email me at keimpe.bronkhorst AT oracle.com if you want to try out a patched OJC. This is not an OJVM fix, so if you compile with Javac, I can't help you at this time.
Keimpe Bronkhorst
JDev team
Similar Messages
-
How do I increase stack size beyond 65532 with help of ulimit command
How do I increase stack size beyond 65532 with help of ulimit command
Are you already using "64-bit Kernel and extensions" as noted in this pane?
-
We have a web app that is getting OutOfMemory errors so we want to increase the size of the heap. The servers have 32gb of memory but we can't go higher in the server configuration than 4gb. On startup anything higher results in:
[18/Oct/2007:19:24:14] warning ( 8763): CORE3283: stderr: Invalid maximum heap size: -Xmx8000m
[18/Oct/2007:19:24:14] catastrophe ( 8763): CORE4005: Internal error: unable to create JVM
[18/Oct/2007:19:24:14] failure ( 8763): CORE4009: Failed to load JVM (check your JRE)
[18/Oct/2007:19:24:14] failure ( 8763): CORE3187: Late initialization failed: Error running init function load-modules: initialization of /opt/SUNWwbsvr/bin/https/lib/libj2eeplugin.so failed
We're running Sun Java Server 6.1 SP 7 on Solaris 10.
ThanksIf you use a 64-bit Sun Java System Web Server, it automatically uses a 64-bit JVM.
If you are running Web Server 6.1, then use the 64-bit version of 6.1 which you can download from
http://www.sun.com/download/products.xml?id=4694392a
If you are running Web Server 7.0 or 7.0 Update 1, then please refer to the following links which explain how you can install/enable the 64-bit features in the server
http://docs.sun.com/app/docs/doc/819-2625/6n4tcivj0?a=view
http://docs.sun.com/app/docs/doc/819-2625/6n4tcivjl?a=view
http://docs.sun.com/app/docs/doc/820-1061/gdhec?a=view -
Unable to increase display size in Yahoo Games Java applet; zoom doesn't work.
My father is vision impaired. He play texas hold em in Yahoo Games. Once the game java applet launches, he needs to make the card display larger. I can't find any way to do this. he's using a PC with Windows 7.
== This happened ==
Every time Firefox opened
== always ==
== User Agent ==
Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_4; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.99 Safari/533.4It's unclear if the problems discussed happen after OJC compiles, or Javac compiles, or both. We have uncovered a bug in the compilation of jspx files using OJC. There is a chance that this bug fix will fix the problems mentioned. Email me at keimpe.bronkhorst AT oracle.com if you want to try out a patched OJC. This is not an OJVM fix, so if you compile with Javac, I can't help you at this time.
Keimpe Bronkhorst
JDev team -
ORA-01653 unable to increase tablespace size
We have Oracle 11gR2 RAC with ASM installed on Redhat Linux
I am not able to extend tablespace it gives error ORA-01653
I checked ASM views
GROUP_NUMBER NAME SECTOR_SIZE BLOCK_SIZE ALLOCATION_UNIT_SIZE STATE TYPE TOTAL_MB FREE_MB
1 DWH_OCR 512 4096 1048576 MOUNTED NORMAL 3057 2131
2 DATABASE 512 4096 1048576 CONNECTED NORMAL 204798 1536
Above view shows we have 1536 Mb free in our Database ASM disk group. And when i checked tablespaces used space so i found its not exceeding 70 GB.
Please suggest/advice what can be ocuppying space in ASM? and how to free it?
Also note archiving is also disabled. I tried to empty recycle bin also. Still same issue.
Thanks in advance
Zeeshan Sheikhselect * from DBA_TABLESPACE_USAGE_METRICS;
TABLESPACE_NAME USED_SPACE TABLESPACE_SIZE USED_PERCENT
ESECTOR_DATA 552 4194302 0.013160712
NCC_DATA 1281408 4194302 30.55116203
ODI_DATA 2358040 4194302 56.22008143
QUEST_DATA 184 4194302 0.004386904
SHOAIBA_DATA 50048 4194302 1.193237874
SYSAUX 225720 4194302 5.381586734
SYSTEM 521560 4194302 12.43496534
TEMP 3200 4194302 0.076293982
UNDOTBS1 160 4194302 0.003814699
UNDOTBS2 16552 4194302 0.39463062
USERS 3337400 4194302 79.56985453
WSECTOR_DATA 192 4194302 0.004577639
select * from v$asm_diskgroup;
GROUP_NUMBER NAME SECTOR_SIZE BLOCK_SIZE ALLOCATION_UNIT_SIZE STATE TYPE TOTAL_MB FREE_MB HOT_USED_MB COLD_USED_MB REQUIRED_MIRROR_FREE_MB USABLE_FILE_MB OFFLINE_DISKS COMPATIBILITY DATABASE_COMPATIBILITY VOTING_FILES
0 FLASH 512 4096 0 DISMOUNTED 0 0 0 0 0 0 0 0.0.0.0.0 0.0.0.0.0 N
1 DWH_OCR 512 4096 1048576 MOUNTED NORMAL 3057 2131 0 926 310 910 0 11.2.0.0.0 10.1.0.0.0 N
2 DATABASE 512 4096 1048576 CONNECTED NORMAL 204798 1536 0 203262 0 768 0 11.2.0.0.0 10.1.0.0.0 N -
I have written a JNI app and it seems to work fine, but processing with very large files I run out of stack space.
I have solved this issue for the moment by changing the stack size with the -Xss param to java but this is not the ideal issue because with even bigger files I still will have issues.
So, I have 3 questions:
1. Is there any way (in the c++ dll) to query the total stack size ?
2. Is there any way to determine free (available) stack size ?
3. Is there any way to increase the stack size when the dll is already running (if it starts to get low)
I look forward to your thoughts
DingI have written a JNI app and it seems to workfine,
but processing with very large files I run out
of
stack space.
That suggests that you have a design problem.
As a guess you are using recursion. Start by
unrolling the recursion code to produce a
non-recursive solution.ood Guess but there is no recursion in my code :-)
While I am always trying to optimize my design, in
this case I am constrained by 3rd party c libraries
that are using very large multi dimensional arrays of
doubles that are neccessary for lots of complicated
math doing triangualtion of satellite data. So, I
have no control over how much memory they want to
consume.
ood Guess but there is no recursion in my code :-)
Then it is unclear as to what you think a good solution would entail.
Do you intend to just to keep retrying the processing step with ever increasing stack sizes? Will that not impact the processing time? Why not just start with a larger stack size? And if the stack size just continues to grow because the file sizes are continuing to grow then what?
While I am always trying to optimize my design, in
this case I am constrained by 3rd party c libraries
that are using very large multi dimensional arrays of
doubles that are neccessary for lots of complicated
math doing triangualtion of satellite data. So, I
have no control over how much memory they want to
consume.
One solution would be to create a C app, not a java one. Find the maximum amount of stack space that you can allocate via a C app and still operate (this depends on what happens with the file itself.) The output goes to a file.
Your java app just starts that in a separate process space.
>>
>
I was referring to the native C stack, used within
the c++ dll, for which the java VM starts via the
-Vss flag. I know the initial total as I am setting
it at runtime. I just wanted to print the value from
within the dll. #2 (below) is more important
though.
That would depend on your OS and compiler.
2. Is there any way to determine free(available)
stack size ? This is the part I was mostly hoping for an answer
to, as I need to communicate with the parent java app
if the stack space gets too low, instead of just
allowing the dll to crash when it runs out
That is a two part question. You want to know the size and you want to know if it gets 'too low'.
You suggested that this is all stack based processsing. So unless you have C methods that are called by the library and in addition it is recursive in nature then this is not possible. There is no point where you could detect it.
You can analyze the file yourself and compute a size before you start processing. But if that is what you are doing then you should do it first and let the java app know the result.
Other than that most OSes allow you to catch 'system exceptions' (which might or might not be actual C++ exceptions.) One of these would be generated when the stack overflows.
You then convert into something that java understands.
For example in Windows there is a function that allows you to set up system exceptions so that they cause a C++ exception to be thrown. You would then catch this exception and convert it into a java exception.
That lets you know that it didn't work but then what?
For example in windows you can create a custom stack for the dll but only when the dll loads (so far as I know.) So to restart this you would have to unload the dll and that means that you will have to have everything wrapped in a custom class loader (which is the only way to cause a dll to be unloaded.)
Not to mention that in my experience the windows function that I mentioned above doesn't necessarily always catch everything.
>>>
>>
No. The VM must be restarted.if that is true, It i a bummer :(You can however, on most OSes, increase the stack size for the shared library. This is done on start up of the shared library. To resize it however means that the shared library must be reloaded. And the only way you can do that in the Sun VM is with a class loader. -
i am unable to increase cache size. whatever i put in the setting it says max cache limit 27.65 mb. I have 3 gb ram and 200 gb hard disk.
Mark the question as solved. Please!
-
Cannot increase the stack size
Hi,
We have a program which gives a StackOverflowError. Trying the increase the stack size using command line options does not work. A simple program shows that the stack is the same size, whatever option we set.
This is the program:
class StackOverflowTest
public static int counter = 0;
public static void main(String[] a)
try {
sub();
} catch (StackOverflowError e)
System.out.println("recursive calls: "+counter);
public static void sub()
counter++;
sub();
We tried several -Xss (and -Xoss) settings: 600K, 2048K, 4M but got the same recursion deep: 16683 (with Eclipse), or 16689 (command line).
We used Windows XP.
Do you have any clue?
Many thanks,
ZsoltOh good, they seem to have broken the forum formatting again.
====================================================================================================================
Bug ID: 4362291 Stack size argument ignored (-Xss and -ss)
====================================================================================================================
public class StackOverflowTest {
public static int counter = 0;
public static final void main(String[] a) {
new Thread(new Runnable() {
public void run() {
try {
sub();
} catch (StackOverflowError e) {
System.out.println("recursive calls: "+counter);
}).start();
public static final void sub() {
counter++;
sub();
/code] -
How can I increase the hard limit of the stack size?
Hi,
My process gives an error of segmentation fault (SIGSEGV) that is caused because the stack limit is reached. I have a doubt about how to increase the stack size. I have tried change it with "ulimit - hard" but this size is 65532kb, and is very low for my process. How can I increase the hard limit?
Thanks.When last I checked, the kernel had a fixed stack size limit.
Do you have the source code to this application? If so, [see this Tiger stack size article|http://homepage.mac.com/eric.c/hpc/contents/documentation/How%20to%20in crease%20the%20stack%20size%20on%20Mac%20OS%20X.pdf], and specifically have a look at the +ld -stack_size+ mechanism; rebuild the code with a bigger limit.
Entirely FWIW, this question would be more typical over in the developer forums or maybe in the Unix forum if you don't have Apple developer access. Better audience for application development and for software-related questions over there. -
Hi there,
Please, what is the impact of increasing the Stack size with the -Xss option for the whole system. is there any relationship or formula between -Xms, -Xmx and -Xss options.
Is it necessary to increase the -Xmx option When i increase the -Xss option.
I'm using Weblogic 9.1 within a machine of 16GB under AIX 64bits and IBM JVM. My parameters are : -Xms=-Xmx=1GB and i think pass the -Xss to 1MB because i get many StackOverflow exceptions.
Think you for your helphi,
Changing the fonts in Print using ABAP is not possible. as basic report output is a text editor.
By changing "Customizing of Local Layout" will only change in display screen and not in print.
One possible way to create a new printer formatr thry SPAD and use that format in while printing.
to know more details about SPAD
Using SPAD - SAP Spool Administration to print different paper size
The SAP spool system manages its own output devices. This includes mostly printers, but also fax and archiving devices. In order for you to use output devices defined in your operating system from the SAP System, you must define these devices in the SAP spool system.
this is a piece of code from SAP-IMG ...its about printing fonts...see if this helps u....
REPORT ZFONT NO STANDARD PAGE HEADING LINE-SIZE 80 LINE-COUNT 65.
Start of print-control
NEW-PAGE PRINT ON.
PRINT-CONTROL FUNCTION 'SF000'.
WRITE: / 'This is CPI 20'.
SKIP.
PRINT-CONTROL FUNCTION 'SF020'.
WRITE: / 'This is CPI 6'.
SKIP.
PRINT-CONTROL FUNCTION 'SF008'.
WRITE: / 'This is CPI 12'.
Depending on your SAP printer device, this may also work
PRINT-CONTROL FONT 1 LPI 6.
you can try to change font and LPI numbers
WRITE: / 'font 1 lpi 6'.
PRINT-CONTROL FONT 2 LPI 6.
WRITE: / 'font 2 lpi 6'.
PRINT-CONTROL FONT 3 LPI 6.
WRITE: / 'font 3 lpi 6'.
End of print-control
NEW-PAGE PRINT OFF.
*--- End of Program
also check out these links:
For More Info Go thru this Link,
font size in basic list output
http://www.sapdesignguild.org/resources/MiniSG-old/BCMSG03E_DEL.htm
http://sap4.com/modules.php?name=conteni2&pa=showpagina&pid=100
do reward points if it helps
rgds -
Change the default stack size in the java.exe file
Does anyone know how to change the default stack size of the jvm?
I'm having problems with my stack. Is there anyway I can change it. I found a tool editbin.exe which is shipped with Visual c++, however I don't have the tool.
Thanks,
WilliamI am using JNI to connect java with a C++ application.
When calling the C++ appliction, STACK_OVERFLOW
happends. I tried java -Xss<size> to increase the
stack size, but failed.This has nothing to do with the above question.
Does anyone knows why?Probably because the java parameter specifies the java stack size and not the C++ stack size. -
"apple-+" does not increase font size in preview pane in mail.app 4.2
i have letterbox http://harnly.net/2009/software/letterbox/letterbox-beta-4-for-snow-leopard/ installed on my machine. before the SL upgrade, i could hit cmd-+ and increase the font size of the message i am viewing. that was super convenient!
i can't do it any more. any ideas anybody on how to bring that back? btw, if i open a separate window for the message, i can use cmd-+ to increase font size. but no more can i use it in the preview window.the obvious suspect would be letterbox. it's beta (=bugs) and I've also heard report that it's incompatible with 10.6.2. you can try uninstalling it and see if that fixes the issue.
-
Stack size for native thread attaching to JVM
All:
I have a native thread (see below, FailoverCallbackThread) that attaches to the JVM and does a Java call through JNI. The stack size for the native thread is 256KB.
at psiUserStackBangNow+112()@0x20000000007a96d0
at psiGuessUserStackBounds+320()@0x20000000007a8940
at psiGuessStackBounds+48()@0x20000000007a8f60
at psiGetPlatformStackInfo+336()@0x20000000007a9110
at psiGetStackInfo+160()@0x20000000007a8b40
at psSetupStackInfo+48()@0x20000000007a5e00
at vmtiAttachToVMThread+208()@0x20000000007c88b0
at tsAttachCurrentThread+896()@0x20000000007ca500
at attachThread+304()@0x2000000000751940
at genericACFConnectionCallback+400(JdbcOdbc.c:4624)@0x104b1bc10
at FailoverCallbackThread+512(vocctx.cpp:688)@0x104b8ddc0
at start_thread+352()@0x20000000001457f0
at __clone2+208()@0x200000000030b9f0
This causes stack overflow in Oracle JRockit JVM. (It does not cause overflow with Oracle Sun JDK.) Is there a recommended stack size for this use case for JRockit? Is there a way to compute it roughly?
Platform Itanium 64 (linux)]
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
BEA JRockit(R) (build R26.4.0-63-63688-1.5.0_06-20060626-2259-linux-ia64, )
mpHow do I found default heap size, stack size for the
thread, number of threads per jvm/process supported ?The threads is OS, OS install and jvm version specific. That information is also not useful. If you create the maximum number of threads that your application can create you will run out of memory. Threads require memory. And it is unlikely to run very well either.
The default heap size and stack size are documented in the javadocs that explain the tools that come with the sun jdk.
and how the above things will vary for each OS and how
do I found ? Threads vary by OS, and OS install. The others do not (at least not with the sun jvm.)
If I get "OutOfMemoryError: Unable to create new native thread" Most of the time it indicates a design problem in your code. At the very lease, you should consider using a thread pool instead.
I found in one forum, in linux you can create maximum
of 894 threads. Is it true ?Seems high since in linux each thread is a new process, but it could be. -
How can i increase sga size in oracle 10g
Hello friends
how can i increase my sga size in oracle 10g
Regards
Vicky
Edited by: Vignesh Chinnasamy on 31-Jul-2012 02:28HI
**SQL> Show parameter sga ;**
NAME TYPE VALUE
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 2G
sga_target big integer 2G
**SQL> show parameter memory;**
NAME TYPE VALUE
hi_shared_memory_address integer 0
shared_memory_address integer 0
**[root@mte ~]# ulimit -a**
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
pending signals (-i) 1024
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 278528
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
*[root@mte ~]#* -
Unable to increase table space
Hi,
i am getting this error on sap apoo 3.1 ides sytem
ORA-001653 Unable to increase table space PSAPEL46DD #
Can any one tell me who do i increase the tables space step by step
Thanks
PriyaHi,
You can do it in couple of ways,ie either with sapdba or brtools.
execute sapdba or brtools and follow the menu options(its quite straight forward)
or you can do it through sqlplus with the command
ALTER TABLESPACE PSAPEL46DD ADD DATAFILE '/path of the file ' size xxxM;
Regards,
Cherry
Maybe you are looking for
-
MacPro Hard Drive Not Recognized
I have a MacPro 2x Dual Core Intel Xeon 3GHz with 4GB RAM & 3 Serial-ATA hard drives. Bay 1 holds a 250GB drive which is my boot disk and applications disc. Bay 2 and Bay 3 hold 500GB discs, Bay 2 I use as my "Data" drive and Bay 3 I use purely as a
-
Trial Balance for combination of two years
In our company we follow fiscal year of January to December to report to the foreign holding company. For Statutory requirements we prepare financial statements for April to March. How do we extract trail balance for April to March which falls in two
-
C/O dosent carry over along with billto to part func. using custom Creat SO
Hi Gurus! We have a custom program to create sales order ZVA01 which creates sales oder. When using that program , we eneter the sold to , the bill to party carries over to the partner function and everything else carries forward except the C/O(Car
-
Catch Weight Management - CWM: Classic Accounting VS Inventory Accounting
Hello dear experts, The info below was extracted from this link: SAP Catch Weight Management - SAP Library The link says: To implement SAP CWM, you need the following components: · SAP ERP Central Component (SAP ECC) · LIME as a component of SAP AP (
-
NEF file corrupt in lightroom, okay in Nikon ViewNX 2
A file which displays fine in the Nikon ViewNX 2 software is displayed in Lightroom (thumbnail and image can be viewed fine, including zoom etc.), but Lightroom reports "An unexpected end-of-file occurred" and I am unable to make an adjustment (unabl