when oakc segvs it totally wedges my system until the file system is full.
it needs something "set coredumpsize 0" set in a csh script
It's worse - I set coredumpsize but it has no effect, perhaps because
oakc is a sh script?
It completely brings down my system, taking all available vm resources such
that no process can start and several daemons spit out error msgs, e.g., sendmail
Note also that this is really two bugs, as oakc shouldn't segv in the first place.
It was compiling this file.
/*
* Preemptive scheduler test
*
* To compile type : ../OAKC/oakc HelloWorldActive.oak
* To run type: ../oaki Clock
*
* @(#)HelloWorldActive.oak 1.4 94/04/25
*/
import oak.lang.*;
class Loop extends Thread {
public void run() {
while (true) {
/*
System.out.print("|" + "\\r");
System.out.print("/" + "\\r");
System.out.print("-" + "\\r");
System.out.print("\\\\" + "\\r");
*/
}
}
public Loop() {
setName("Loop");
setPriority(NORM_PRIORITY - 1);
System.out.print("Loop\\n");
start();
}
}
class Clock extends Thread {
private Loop loop;
int i;
public void run() {
for (i = 0; i < 10; i++) {
sleep(1000); // sleep for a second
System.out.print("Clock Tick\\n");
}
loop.stop();
}
public Clock(Loop l) {
setName("Clock");
loop = l;
setPriority(NORM_PRIORITY + 1);
System.out.print("Initial loop is started.\\n");
start();
}
public static void main(String args[]) {
new Clock(new Loop());
}
}
**************************
Here's a smaller example - it looks like it has to do with an
empty while (true) loop.
import oak.lang.*;
class CoreDump extends Thread {
public void run() {
while (true) {
/*
System.out.print("|" + "\\r");
System.out.print("/" + "\\r");
System.out.print("-" + "\\r");
System.out.print("\\\\" + "\\r");
*/
}
}
public CoreDump() {
setName("CoreDump");
setPriority(NORM_PRIORITY - 1);
System.out.print("CoreDump\\n");
start();
}
}
it needs something "set coredumpsize 0" set in a csh script
It's worse - I set coredumpsize but it has no effect, perhaps because
oakc is a sh script?
It completely brings down my system, taking all available vm resources such
that no process can start and several daemons spit out error msgs, e.g., sendmail
Note also that this is really two bugs, as oakc shouldn't segv in the first place.
It was compiling this file.
/*
* Preemptive scheduler test
*
* To compile type : ../OAKC/oakc HelloWorldActive.oak
* To run type: ../oaki Clock
*
* @(#)HelloWorldActive.oak 1.4 94/04/25
*/
import oak.lang.*;
class Loop extends Thread {
public void run() {
while (true) {
/*
System.out.print("|" + "\\r");
System.out.print("/" + "\\r");
System.out.print("-" + "\\r");
System.out.print("\\\\" + "\\r");
*/
}
}
public Loop() {
setName("Loop");
setPriority(NORM_PRIORITY - 1);
System.out.print("Loop\\n");
start();
}
}
class Clock extends Thread {
private Loop loop;
int i;
public void run() {
for (i = 0; i < 10; i++) {
sleep(1000); // sleep for a second
System.out.print("Clock Tick\\n");
}
loop.stop();
}
public Clock(Loop l) {
setName("Clock");
loop = l;
setPriority(NORM_PRIORITY + 1);
System.out.print("Initial loop is started.\\n");
start();
}
public static void main(String args[]) {
new Clock(new Loop());
}
}
**************************
Here's a smaller example - it looks like it has to do with an
empty while (true) loop.
import oak.lang.*;
class CoreDump extends Thread {
public void run() {
while (true) {
/*
System.out.print("|" + "\\r");
System.out.print("/" + "\\r");
System.out.print("-" + "\\r");
System.out.print("\\\\" + "\\r");
*/
}
}
public CoreDump() {
setName("CoreDump");
setPriority(NORM_PRIORITY - 1);
System.out.print("CoreDump\\n");
start();
}
}
- relates to
-
JDK-1184107 infinite recursion cause oaki to use up all swap
-
- Closed
-