Thread pools for execute queues

We've set up thread pools for several execute queues dedicated to high-load servlets
in our application. Once in a while, we get into a condition in which none of
these threads are available and then the threads never become available - we have
to restart the server.
I realize that this is a pretty generic description of the problem :-) but I wonder
if anyone else has encountered this and has an idea what might be causing it ?
Right now I am guessing that something in our code causes a resource contention
that eventually deadlocks all the threads. But that is just a guess.

Ethan,
"Ethan Allen" <[email protected]> wrote in message
news:3e0220a1$[email protected]..
Thanks, Dimitri and Slava !
I will do this and learn a little emore ...FYI, there is a web site dedicated to weblogic documentation -
http://e-docs.bea.com/
Pick your server version, go to "Search", type "thread dump".
Regards,
Slava Imeshev
>
ethan
"Slava Imeshev" <[email protected]> wrote:
Hi Ethan,
For windows press <Ctrl>+<Break> in the server shell window,
for *nix send kill -3 {server PID}.
Regards,
Slava Imeshev
"Ethan Allen" <[email protected]> wrote in message
news:3e020fb4$[email protected]..
Thanks for your reply, Dimitri.
We have not looked at thread dumps. How may we do this ?
Ethan
"Dimitri I. Rakitine" <[email protected]> wrote:
Did you try looking at thread dumps when this happens ?
Ethan Allen <[email protected]> wrote:
We've set up thread pools for several execute queues dedicated to
high-load
servlets
in our application. Once in a while, we get into a condition in
which
none of
these threads are available and then the threads never become
available
- we have
to restart the server.
I realize that this is a pretty generic description of the problem:-) but I wonder
if anyone else has encountered this and has an idea what might be
causing
it ?
Right now I am guessing that something in our code causes a
resource
contention
that eventually deadlocks all the threads. But that is just a
guess.
>>>>
Dimitri

Similar Messages

  • Custom thread pool for Java 8 parallel stream

    It seems that it is not possible to specify thread pool for Java 8 parallel stream. If that's so, the whole functionality is useless in most of the situations. The only situation I can safely use it is a small single threaded application written by one person.
    In all other cases, if I can not specify the thread pool, I have to share the default pool with other parts of the application. If someone submits a task that takes a lot of time, my tasks will get stuck. Is that correct or am I overlooking something?
    Imagine that someone submits slow networking operation to the fork-join pool. It's not a good idea, but it's so tempting that it will be happening. In such case, all CPU intensive tasks executed on parallel streams will wait for the networking task to finish. There is nothing you can do to defend your part of the application against such situations. Is that so?

    You are absolutely correct. That isn't the only problem with using the F/J framework as the parallel engine for bulk operations. Have a look http://coopsoft.com/ar/Calamity2Article.html

  • Configuration of Thread Pool for CQ's Web Container

    I am trying to detrmine whether there is any specific configuration for tuning the web container thread pool for CQ. The only configuration I observe is OSGi 's Apache Sling Event Thread Pool but tuning this does not directly correlate to the thread pool that is used for serving web requests by the publish instance.
    Any help would be greatly appreciated as I work through tuning our CQ instance.

    Unfortunately, the max thread settings is not exposed in CQ 5.5.However, all the other configurable settings (equivalent for server.xml) can be seen at [1]
    [1] http://localhost:4502/system/console/configMgr/org.apache.felix.http
    This is fixed in CQ 5.6 current release.
    Thanks,
    Varun

  • [svn] 1605: Bug: BLZ-155 - Deadlock using a thread pool for tomcat connectors

    Revision: 1605
    Author: [email protected]
    Date: 2008-05-07 14:24:53 -0700 (Wed, 07 May 2008)
    Log Message:
    Bug: BLZ-155 - Deadlock using a thread pool for tomcat connectors
    QA: Yes - Jorge verified in the QE lab
    Doc: No
    Ticket Links:
    http://bugs.adobe.com/jira/browse/BLZ-155
    Modified Paths:
    blazeds/branches/3.0.x/modules/core/src/java/flex/messaging/client/EndpointPushNotifier.j ava

    Cross post: http://forum.java.sun.com/thread.jspa?threadID=5215686&tstart=0
    If you must post across forums, just post in the most relevant one and then give the link to that in the other posts.

  • Thread pool for Servlets

              Hi all,
              I am facing a big problem while doing a concurrent testing of my web application.
              I am testing with 60 concurrent users.
              I have set the database connection pool minimum capacity to 50, capacity increment
              to 10 and maximum capacity to 100.
              While there is no problem in getting database connection, the session variables
              are getting mixed up (i.e. the session variable for one user is coming up as that
              for another user!!!).
              Does it have something to do with configuring some pool for servlets threads or
              something?
              Please help.
              Thanks a lot in advance and best regards,
              Jaya
              

              Hi all,
              I am facing a big problem while doing a concurrent testing of my web application.
              I am testing with 60 concurrent users.
              I have set the database connection pool minimum capacity to 50, capacity increment
              to 10 and maximum capacity to 100.
              While there is no problem in getting database connection, the session variables
              are getting mixed up (i.e. the session variable for one user is coming up as that
              for another user!!!).
              Does it have something to do with configuring some pool for servlets threads or
              something?
              Please help.
              Thanks a lot in advance and best regards,
              Jaya
              

  • Servlet Thread Pools for iPlanet WS 4.1

    We have iPlanet WS 4.1 SP 5, running on HP UX. Wanted to make sure servlets run fast, so set up servlet thread pool. Initial result was that even the startup servlet could not be loaded, got stack overflow. Reduced number of threads from 60 to 5. Now startup servlet kicked off OK, but a subsequent servlet processing a request bombed with same error. This is obviously some kind of resource issue; how does one allocate enough memory or whatever it needs to handle the thread pool? Do I really even need a thread pool?

    Thanks, and a follow-up question: at that reference, it seemed to imply there is really no need to allocate a user thread pool if running on Unix. Could even slow down the application. Am I likely to be OK with about 300 concurrent users if I don't allocate a thread pool? I was afraid they'd be single-threaded through the front controller servlet if I did not specifically allocate and use a thread pool, but perhaps multiple threads are already built into the container?

  • Thread pool + multiple work queues

    Hi,
    I guess the problem I am facing is pretty common but I don't know what's the best pattern for this.
    I have multiple queues. Queue element is "Runnable". The requirement is that "Runnable"s inside the same queue must be run serializely. I want to use a ThreadPool to do this since I want concurrency (different queues can run simultanously) but don't want too many threads.
    I know Java 5 Concurrent API (newbie though). But for this problem, I don' t know what classes I should combine. Can anyone give an example or maybe a link to a good article?
    Thank you!

    java.util.concurrent.Executors
    see newSingleThreadExecutor()
    submit() you Runnable to be executed. submit() will return a Future.
    Future.get() will block waiting for the Runnable you submitted to complete its execution before continuing.
    When get() returns, submit() the next Runnable.

  • Restricting Thread Pool for Servlet instances

    I am using WebLogic5.1.0 version wherein I am registering a Servlet which
    would be called by all the clients connecting
    to my aplication. The servlet's service methods is taking some time to
    execute. Since the servlet is following a SingleThreadModel, when there are
    a large number of Clients connected, the number instances of Servlets
    created are very high and the number of thread in the Application Server
    process becomes very high affecting the performance of the other
    applications.
    Is it possible to restrict the number of instances of the servlets that get
    created in the Application server ?
    What are the setting required to achieve this ?
    Sandeep

    Hi.
    I'm not aware of a property setting that allows you to restrict the number of
    servlet instances in WLS for the SingleThreadModel. The number of execute
    threads is fixed - it does not grow depending on load. You can set this value
    in the weblogic.properties file by setting weblogic.system.executeThreadCount.
    This value is 15 by default.
    It does sound like you are reaching the max capability of your
    server/hardware. You should try tuning WLS.
    Here are a couple of suggestions:
    1. Try adjusting the executeThreadCount value to a higher value. Start by
    setting it to 30 - see if that makes any difference.
    2. Check out the following tuning guide:
    http://www.weblogic.com/docs51/admindocs/tuning.html
    3. Here is a list of admin properties that might aid in tuning:
    http://www.weblogic.com/docs51/adminhelp/AdminPropertyHelp.html
    4. If you are still having problems you might do better by posting this issue
    to the performance newsgroup.
    Regards,
    Michael
    Sandeep Rajpathak wrote:
    I am using WebLogic5.1.0 version wherein I am registering a Servlet which
    would be called by all the clients connecting
    to my aplication. The servlet's service methods is taking some time to
    execute. Since the servlet is following a SingleThreadModel, when there are
    a large number of Clients connected, the number instances of Servlets
    created are very high and the number of thread in the Application Server
    process becomes very high affecting the performance of the other
    applications.
    Is it possible to restrict the number of instances of the servlets that get
    created in the Application server ?
    What are the setting required to achieve this ?
    Sandeep--
    Michael Young
    Developer Relations Engineer
    BEA Support

  • Execute queue thread count set back?

    I have a script which automatically sets up execute queues (and their thread counts) for either an admin server or two managed servers in a cluster (depending on whether it's a standalone deployment). Upon building a domain, the script connects to a temporary server and sets everything up, at this point it appears all the queues and thread counts are set correctly. However once the build has completed and the generated config.xml is checked, three queues don't have any thread counts associated with them at all; these queues are:
    ThreadQueue (Count)
    wli.internal.ProcessInstanceInfo (15)
    wli.internal.ProcessTracking (15)
    wli.process.event.thread.pool (15)
    The other queues have all their thread counts set correctly. Does anybody know how these queues are used and if this will have an impact on the above problem?

    No worries about this post, the reason has been solved.
    Reason
    The default thread count for execute queues in development mode is 15 threads, therefore if a queue is specified with this value it won't be set in the config.xml (when an execute queue doesn't have a ThreadCount attribute, the default is used instead). The trouble is that when the server is started we enter production mode where the default thread count is 25 threads instead.

  • Different execute queues with different thread priorities

    We are running WebLogic 6.1, SP2 on Solaris 2.8 and I have a question related to the
    use of Execute queues
    I'm aware that the administration console servlets, and the rest of requests given
    to the server run in separate execution queues each with their own pool of threads.
    There is an <executequeue> element in the config.xml that allows you to change the
    parameters of the default execute queue that most requests are handled in.
    My question is is it possible to create new execute queues, each with a given number
    of threads running at a different priority. Then one could assign a particular WAR
    deployment to a queue and hence control the priority that certain requests run at
    governed by the deployment that received the initial request.
    Essentially the problem that I'm trying to address is that I have a JAR with MDBs
    in it. I also have JARs with Entity and Session EJBs and WARs. They are all using
    the same pool of threads to execute. I want to be able to throttle the MDBs as they
    receive messages so they don't take over the machine and interfere with interactive
    use. Now I can limit the number of MDBs in the MDB pool, but then if the machine
    is not being used by users, then the machine resources are wasted only allowing one
    MDB to be active at a time when there are a lot of messages in the queue.
    What I want to be able to do is to have as many MDBs run as I can, up to a certain
    limit, say 15 for example, but not to pull from the same thread pool/execute queue
    as the requests for URLs in the WAR. Also I want the MDB threads to run at a much
    lower priority and always give preference to interactive requests.
    So interactive threads will always win and grab the processors if interactive use
    is high, but if it's not, the MDBs can run instead.
    Regs,
    Paul

    Hi,
    I had a chat with BEA support about my issue. You can create multiple ExecuteQueues
    and assign them to servlet definitions in WARs in the web.xml, and with an option
    to the EJBC compiler, you can assign a particular class of EJB to an ExecuteQeueue.
    For details see http://e-docs.bea.com/wls/docs61/perform/AppTuning.html#1106284
    Presumably it's the thread of the initial request that counts, i.e. if a WAR calls
    an EJB, then it's the thread in the execute queue of the WAR that will be used right
    the way through the request, not that of the EJB being called, assuming they are
    both deployed in the same WebLogic instance. If they were in different instances,
    you would obviously have a thread from the WAR queue on one instance, and a thread
    from the EJB queue on another instance.
    If a plain Java command-line client connected directly to an EJB, then it would be
    the thread from the ExecuteQueue of the EJB that would get used.
    I've been told that MDBs always run in the default queue, so it seems that the way
    for me to do what I want is just to create an ExecuteQueue, set the priority of the
    threads in this queue to be higher than that of the default queue, and assign this
    queue to my WARs. I can leave my EJBs running in the default queue.
    Regs,
    Paul
    "Dimitri I. Rakitine" <[email protected]> wrote:
    Don't know about 6.1 (One can find out very easily what the possible config
    parameters
    are by deploting
    http://dima.dhs.org/misc/listMBeans.jsp and
    http://dima.dhs.org/misc/showMBean.jsp
    abd looking at the XXXConfig mbeans), but in 7.0 there are quite a few
    things which
    can be tuned in the executequeue config (and priority is one of them. also
    interesting
    is that it is possible to configure it to increase number of execute threads
    when queue
    length exceeds some specified threshold) :
    QueueLength
    Returns the maximum length of this queue.
    ThreadPriority
    Returns the priority of the threads associated with this queue.
    ThreadCount
    Returns the number of threads assigned to this queue.
    QueueLengthThresholdPercent
    Returns the threshold percent for length of this queue, set in QueueLength.
    ThreadsIncrease
    Returns the number of threads to grow when a queue is within QueueLengthThresholdPercent
    of the set QueueLength.
    ThreadsMaximum
    Returns the maximum number of threads in the pool.
    ThreadsMinimum
    Returns the minimum number of threads in the pool.
    Dimitri

  • Thread pool configuration for write-behind cache store operation?

    Hi,
    Does Coherence have a thread pool configuration for the Coherence CacheStore operation?
    Or the CacheStore implementation needs to do that?
    We're using write-behind and want to use multiple threads to speed up the store operation (storeAll()...)
    Thanks in advance for your help.

    user621063 wrote:
    Hi,
    Does Coherence have a thread pool configuration for the Coherence CacheStore operation?
    Or the CacheStore implementation needs to do that?
    We're using write-behind and want to use multiple threads to speed up the store operation (storeAll()...)
    Thanks in advance for your help.Hi,
    read/write-through operations are carried out on the worker thread (so if you configured a thread-pool for the service the same thread-pool will be used for the cache-store operation).
    for write-behind/read-ahead operations, there is a single dedicated thread per cache above whatever thread-pool is configured, except for remove operations which are synchronous and still carried out on the worker thread (see above).
    All above is of course per storage node.
    Best regards,
    Robert

  • The problem in the thread pool implemented by myself

    Hello, I need to a thread pool in J2ME CDC 1.0 + FP 1.0, so I implemented a simple one by myself that also meets my own requirement.
    Here is the main idea:
    The thread pool creates a fixed number of threads in advance. When a task comes, it is put in the waiting list. All threads tries to get the tasks from the waiting list. If no task exists, the threads wait until someone wakes them up.
    Here are the requirements from myself:
    1. when a task has finished its work in one execution, it is put in the waiting list for the next run.
    2. the task can control the delay between when the task owner tries to put it in the waiting list and when the task is actually put in the waiting list. I need this function because sometimes I don't want the tasks to run too often and want to save some CPU usage.
    In my program, I creates two thread pools. In one pool, every task don't use the delay, and the thread pool works very well. The other pool has the tasks that use the delay, and sometimes, as I can see from the printed information, there are many tasks in the waiting list but 0 or 1 thread executes tasks. It seems that the waiting threads cannot wake up when new tasks comes.
    I suspect the code in addTask(), but cannot find the reason why it fails. Could anyone please help me find out the bug in my code? I put the code of thread pool below
    Thank you in advance
    Zheng Da
    ThreadPool.java
    package j2me.concurrent;
    import java.util.LinkedList;
    import java.util.Timer;
    import java.util.TimerTask;
    import alvis.general.Util;
    public class ThreadPool {
         private int maxQueueSize;
         private boolean running = true;
         private Thread[] threads;
         private LinkedList tasks = new LinkedList();
         private Timer timer = new Timer(true);
         private AtomicInteger usingThreads = new AtomicInteger(0);
         private synchronized boolean isRunning() {
              return running;
         private synchronized void stopRunning() {
              running = false;
         private synchronized PoolTask getTask() {
              while (tasks.isEmpty() && isRunning()) {
                   try {
                        this.wait();
                   } catch (InterruptedException e) {
                        e.printStackTrace();
              if (tasks.isEmpty())
                   return null;
              // Util.log.info(Thread.currentThread().getName() +
              // " gets a task, left tasks: " + tasks.size());
              return (PoolTask) tasks.removeFirst();
         private synchronized void addTaskNoDelay(PoolTask task) {
              tasks.addLast(task);
              notifyAll();
         private synchronized void addTask(final PoolTask task) {
              long delay = task.delay();
              if (delay == 0) {
                   addTaskNoDelay(task);
              } else {
                   timer.schedule(new TimerTask() {
                        public void run() {
                             addTaskNoDelay(task);
                   }, delay);
         private synchronized int numTasks() {
              return tasks.size();
         private class PoolThread extends Thread {
              public void run() {
                   Util.poolThreads.inc();
                   while (isRunning()) {
                        PoolTask task = getTask();
                        if (task == null) {
                             Util.poolThreads.dec();
                             return;
                        usingThreads.inc();
                        long currentTime = System.currentTimeMillis();
                        task.run();
                        long elapsedTime = System.currentTimeMillis() - currentTime;
                        if (elapsedTime > 100)
                             System.err.println(task.toString() + " takes " + ((double) elapsedTime)/1000 + "s");
                        usingThreads.dec();
                        if (!task.finish()) {
                             addTask(task);
                   Util.poolThreads.dec();
         public ThreadPool(int size, int taskQueueSize) {
              maxQueueSize = taskQueueSize;
              threads = new Thread[size];
              for (int i = 0; i < threads.length; i++) {
                   threads[i] = new PoolThread();
                   threads.start();
         public synchronized boolean executor(PoolTask task) {
              if (!isRunning()) {
                   return false;
              Util.log.info("Thread Pool gets " + task + ", there are "
                        + numTasks() + " waiting tasks");
              if (numTasks() >= maxQueueSize) {
                   return false;
              addTask(task);
              return true;
         public synchronized void destroy() {
              stopRunning();
              timer.cancel();
              // TODO: I am not sure it can wake up all threads and destroy them.
              this.notifyAll();
         public synchronized void printSnapshot() {
              System.err.println("using threads: " + usingThreads + ", remaining tasks: " + tasks.size());
    PoolTask.javapackage j2me.concurrent;
    public interface PoolTask extends Runnable {
         * It shows if the task has already finished.
         * If it isn't, the task will be put in the thread pool for the next execution.
         * @return
         boolean finish();
         * It shows the delay in milliseconds that the task is put in the thread pool.
         * @return
         long delay();

    are receiving/sends tasks packets time consuming operation in your case or not? if it is not you do not need to use thread pools at all. you can create a queue like in your code through the linked list and dispatch this queue periodically with minimum monitor usage. try this.
    import java.util.LinkedList;
    public class PacketDispatcher extends Thread {
        LinkedList list = new LinkedList();
        public PacketDispatcher (String name) {
            super(name);
        public void putTask(Task task) {
            synchronized (list) {
                list
                        .add(task);
                list.notify();
        public void run() {
            while (true/* your condition */) {
                Task task = null;
                synchronized (list) {
                    while (list.isEmpty())
                        try {
                            list.wait();
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                    task = (Task)list
                            .poll();
                if (task == null) {
                    try {
                        Thread
                                .sleep(1);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    continue;
                task
                        .run();
                if (!task.isFinished()) {
                    putTask(task);
                Thread
                        .yield();
        public static void main(String[] args) {
            // just for test
            try {
                Thread.sleep (10000);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            PacketDispatcher dispatcher = new PacketDispatcher("Packet Dispatcher");
            Task task = new Task();
            dispatcher.putTask(task);
            dispatcher.start();
            try {
                Thread.sleep (10000);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            Task task2 = new Task();
            dispatcher.putTask(task2);
    class Task {
        long result = 0;
        public boolean isFinished () {
            if (getResult() >= 10000000) {
                return true;
            return false;
        public void run() {
            for (int i = 0; i < 1000; i++) {
                result += i;
        public long getResult () {
            return result;       
    }

  • Combining the fixed and cached thread pools

    Is there a way to 'combine' the behavior of cached and fixed thread pools ? I have a requirement where
    - at startup, I need to execute a fixed number of short-lived tasks at the background
    - after startup, on demand, I need to run one short-lived task at a time
    If I use a fixed thread pool for my startup processing, it creates the fixed number of threads to process the tasks. But subsequently, those many threads are not required since my task submission is going to be one at a time. The remaining (n-1) threads therefore are really sitting idle & useless.
    If I use a cached thread pool, then I cannot constrain the number of threads to run at startup (since it creates one for each task). Though it ends up taking those threads out after they are idle for a fixed period. But I'm worried that it might create many threads and possibly slowing down the startup ?
    Is there a way to create a pool with a fixed number of threads but 'remove' a set of threads when they are idle ?
    TIA

    v_bala wrote:
    Thanks. The SynchronousQueue worked as expected. But I tried a LinkedBlockingQueue with size 1 hoping that would cause the second task submission to cause a new thread creation. It didn't. Instead it queues up the request (maybe the doc in ThreadPoolExecutor says that when it mentions "If corePoolSize or more threads are running, the Executor always prefers queuing a request rather than adding a new thread"). I suppose if I were to try another it would create another thread ? (I was testing with only two tasks - the first one ended up creating a thread for the task and the next got queued since the queue capacity is 1)yes, the TPE will not start adding threads until the queue starts rejecting them. kind of odd in my opinion, but that's how it works.
    Btw, that was an interesting idea to add a task that scale the core pool number down ! Currently it comes back down to just the one thread (my core pool size is one) after the idle timeout but your idea may give me a slightly better response since it will scale down the core pool size quicker....I suppose if there was a task submission before that idle time there maybe a performance hit (but I don't anticipate that in my case )?actually, that won't scale things down any faster. changing the core pool size will not ditch the other threads immediately, they will still stick around until they idle timeout. changing the core pool size allows you to not worry about the queue implementation (the first solution). you can set the initial core pool size to your "max" size on startup, then drop it down for the normal processing, all the while using a linkedblockingqueue of unlimited size.

  • JMS Thread Pool Size

    Hi,
              I'm using WLS 6.1. The console has a setting for: JMS Thread Pool Size. I wanted to tune the number of threads used by JMS. I thought JMS asynch consumers would use threads in this pool however that doesn't seem to be the case (they all use the default execute threads and queues). Why is this setting available?
              Note the BEA WebLogic JMS Performance Guide talks about tuning this value from version 6.1 up to 8.1 and states "On the server, incoming JMS related requests execute in the JMS execute queue/thread pool."
              Thanks in advance for any responses,
              Mich

    Disregarding what it is for, in my experience, tuning this setting rarely has much effect. For 6.1, the main thread pool related tunables to look at are the EJB thread pools and EJB max-beans... settings, the "default" thread pool, and the internal thread-pool for stand-alone clients -- all of which are mentioned in the performance guide.

  • The different thread pools in 6.1

    Boy am I just flooded with just 6.1 migration issues. Life was much
    simpler with weblogic.properties file.
    Looking at Config.Dtd I couldnt see the different thread pools that WLS
    5.1 offered.
    How do I do set up thread pools for
    a) Servlets
    b) RMI
    c) JMS
    In 5.1 you had a servletthreadpool, an executethreadcount(for RMI) and a
    jms thread pool.

    In 6.1
    There isn't any seperate execute ThreadPool for servlets.
    The only thread pool that you can tune is the default
    queue which can be done via console. Ofcourse you can
    configure user defined thread queues.
    Also there are some internal thread pools that are not
    exposed to the developers. for e.g. admin queue, replication
    queue , console queue , rmi queue , jms queue etc....
    If you still want to route your servlet requests via a
    seperate thread queue, you have to specify
    the dispatch policy & the queue name.
    see below
    http://e-docs.bea.com/wls/docs61/perform/AppTuning.html#1105201
    Kumar
    Aswin Dinakar wrote:
    Boy am I just flooded with just 6.1 migration issues. Life was much
    simpler with weblogic.properties file.
    Looking at Config.Dtd I couldnt see the different thread pools that WLS
    5.1 offered.
    How do I do set up thread pools for
    a) Servlets
    b) RMI
    c) JMS
    In 5.1 you had a servletthreadpool, an executethreadcount(for RMI) and a
    jms thread pool.

Maybe you are looking for

  • PL/SQL function. ORA-00933: SQL command not properly ended

    This is my first attempt at pl/sql functions with dynamic sql. It will compile, but when I try to test it I get the ORA-00933 error at line 147. line 147 is OPEN retval FOR report_query; Please take a look and let me know what it wrong! thanks {CREAT

  • Org Unit with more than one Chief Position

    Hi, we have implemented MSS via the portal using a one-to-one relationship between Org Units and Chief Positions, and we would now like to have multiple Chief positions attached to one Org Unit. As far as I can tell from the SAP documentation, this s

  • How do I choose Air 3.0 as my player?

    Hey guys. I've downloaded the latest version of Air (3.1 now), but I can't choose it as my player in CS5.5. Is there something specific I'm supposed to do so I can access it? I assume I can also import the Air 3 libraries into flash builder as well,

  • Wb_rt_api_exec over a database link

    When I call wb_rt_api_exec over a database link I receive: ORA-20001: Task not found - Please check the Task Type, Name and Location are correct. ORA-06512: at "OWB_10_2_0_1_31.WB_RT_API_EXEC", line 704. When I run the command on the other database i

  • I have used Firefox for the last number of years but now it crashes upon opening.

    I have used Firefox for the last number of years but now it crashes upon opening. I have unistalled and installed (version 6) but still it crashes. It does not start in safe mode either. I have read the various help support but I seem to be going aro