Waiting for a thread to die.

Hello, I hope you can help me...
I am writting a jdk1.4.1 Swing application that displays a small animation. This animation is processed from within a separate thread. My program makes a call starting this 'animation thread'. For practical reasons my program needs to wait for this thread to die (and thus the full animation to be shown) before it can continue. I am waiting for the animation thread to die using Threads 'join' method. However the problem with this is that I am forcing the GUI thread to wait resulting in the animation being calculated but not displayed. And so... how can I fix this... all I want is to wait until the animation is shown.
What I would like to do is:
1. Start animation;
2. wait intil animation has completed;
3. continue with program.
Any help or advice will be greatly appreciated.
Thank you in advance.

Maybe this design could work for you. You divide your program into three parts running in three separate threads.
1. The main thread handling GUI stuff and coordination of the two other threads.
2. A working thread doing most of what the main thread is now doing.
3. The animation thread.
With this division of labour the working thread is waiting for the animation thread to finish (the main GUI thread isn't). The main thread will be free at all times to react to the users input or updating the screen or whatever, while the other two threads are cooperating to produce the animation.

Similar Messages

  • Application waits for the thread to finish

    Hi all,
    I have a class let say test that extends Thread.
    In my application i say:
    test Xtest = new test();
    Xtest.start();
    System.out.println("Thread finished");
    I need my application to wait for the thread to finish for it to continue, i.e. in my example print "Thread finished" .
    Can someone help me.
    Thanks in advance for your help.
    Best regards,
    Saadi MONLA

    This should work:
    test Xtest = new test();
    Xtest.start();
    Xtest.join();
    System.out.println("Thread finished");

  • Waiting for many threads

    Hey guys,
    I know how to make one thread wait for another named thread to complete, but how do u make a thread wait for many threads to complete with the added problem of not knowing the names of the threads your waiting for? Looked and been trying for ages but can't get anything to work.
    Thanx
    Lisa

    No i saw it, pehaps i should rephrase with a question, how would you go about giving all these threads a reference? If it ain't obvious already am not great with java and if someone could tell me how to give the threads spawned references it would be great.
    As ive explained the code is really long so am not going to waist peoples time by posting it. Here is basically how i am spawning the threads "willy-nilly" style.
         while ((p < searchTerms.size())&&(p < 30)){
             term = (searchTerms.elementAt(p)).toString();
             NetChecker nc = new NetChecker(term,excludedAdds,refWeb);
             searchClasses.addElement(nc);     
             new Thread(nc).start();
             p++;
         } the classes all return web addresses in a vector, thats why i need all the threads to complete so i can collect all the results
    Thanx
    Lisa

  • Wait for all threads in a array to die

    I everyone. I'm from Portugal and I have some experience in JAVA programming (approximately five years) but this is the first the first time that i'm trying to use threads. I'm trying to learn writing some simpler code that does almost exactly at the basic level the same stuff that a complex application that I need to write for my work.
    What I'm trying to do is execute a counter that counts all operations in threads belonging to the same array (an array of n threads).
    A static variable in the Thread class (implementing Runnable) counts all operations performed by all threads and sums them all and shoud display the total of operations after all threads terminate, but this exactly what I don't know how to do:
    This is my example code:
    public class TT1 implements Runnable {
         int id;
         double last_number;
         static int threads_counter = 0;
         static int total_threads = 4;
         static long total_numbers;
         int total_randoms = 1000;
         public void run() {
              for (int i=0;i<total_randoms;i++)
                   total_numbers++;
                   // does some stuff, in this case, generate a random number!
                   last_number = Math.random();
              System.out.printf("Thread %d:%f(%d)\n",id,last_number,total_numbers);
         public TT1() {
              id = threads_counter++;
              new Thread(this).start();
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              Thread [] threads = new Thread[total_threads];
              for (int i=0;i<threads.length;i++)
                   threads[i] = new Thread(new TT1());
              /* commented code using join(), is not working or I don't know
              how to use it! */
              for (int i=0;i<threads.length;i++)
                   try {
                        threads.join();
                   } catch (InterruptedException e) {
                        e.printStackTrace();
              try {
                   threads[total_threads-1].join();
              } catch (InterruptedException e) {
                   e.printStackTrace();
              // this line should be executed ONLY after ALL threads have died!
              System.out.println("******GENERATED NUMBERS TOTAL:" + total_numbers);
    Somebody can give me a hint how to solve this ?

    Thanks for your replies.
    Actually, i've corrected the code, now i'm starting the threads outside the constructor. Originally I thought this could be a simpler way to create the threads: launching them at same time I'm creating them! Is this wrong ? :) Well, watching the results.
    I changed my code:
    public class TT1 implements Runnable {
         int id;
         double last_number;
         static int threads_counter = 0;
         static int total_threads = 4;
         static long total_numbers;
         int total_randoms = 1000;
         public void run() {
              for (int i=0;i<total_randoms;i++)
                   total_numbers++;
                   // does some stuff, in this case, generate a random number!
                   last_number = Math.random();
              System.out.printf("Thread %d:%f(%d)\n",id,last_number,total_numbers);
         public TT1() {
              id = threads_counter++;
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              Thread [] threads = new Thread[total_threads];
              /* create individual threads */
              for (int i=0;i<threads.length;i++)
                   threads[i] = new Thread(new TT1());
              /* launch the threads (NEW CODE) */
              for (int i=0;i<threads.length;i++)
                   threads.start();
              /* commented code using join(), is not working or I don't know
              how to use it! */
              for (int i=0;i<threads.length;i++)
                   try {
                        threads[i].join();
                   } catch (InterruptedException e) {
                        e.printStackTrace();
              // this line should be executed ONLY after ALL threads have died!
              System.out.println("******GENERATED NUMBERS TOTAL:" + total_numbers);
    And I obtain the output:
    $ java TT1
    Thread 0:0,191546(1000)
    Thread 1:0,937476(2000)
    Thread 2:0,825079(3000)
    Thread 3:0,451367(4000)
    ******GENERATED NUMBERS TOTAL:4000Exactly as I want it!
    All is good when it works good ;)
    Best regards

  • Standby media recovery waiting for inactive thread

    Hi,
    Please let me know any idea on this scenario. Thanks.
    Environment:
    Oracle 11.2.0.2
    primary: 3 node RAC
    standby: 3 node RAC
    Problem:
    there is thread 5 (not registered instance or did not show in srvctl) that generates archivelog. but the lag apply stopped because of this when the instance (of thread 5) is shutdown.
    question: somehow an instance is registered in the cluster but in srvctl only 3 instance is running. it should have 4 instance but 1 is not running. How can I remove the thread 5 so when someone startup then shutdown instance#4 it will not create archivelog that will stopped the apply of archivelog in standby.
    note: this is perf environment server so someone and "other" DBA is accessing this environment which I am not aware what are they doing with the cluster.
    looking in alert log file: - it is waiting for thread 5 sequence 510. But the instance is down so log is not shipped to standby database and this resulted to lag in other threads.
    Sat Aug 03 18:54:47 2013
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_1_seq_13718.1544.822333555
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_2_seq_17665.22678.822315375
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_3_seq_15465.14138.822313997
    Media Recovery Waiting for thread 5 sequence 510
       THREAD# LAST_SEQ_RECEIVED LAST_SEQ_APPLIED
             1             13745            13717
             2             17728            17664
             3             15527            15464
             5               509              509
    what I did is:
    1. primary (asm copy to file system)
    2. scp primary to standby
    3. standby (file system copy to asm)
    4. rman target / -> catalog archivelog <thread 5 sequence 510)
    5. then looking into alert log file; it performed media recovery
    Sat Aug 03 23:03:13 2013
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_1_seq_13718.1544.822333555
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_2_seq_17665.22678.822315375
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_3_seq_15465.14138.822313997
    Media Recovery Waiting for thread 5 sequence 510
    Sat Aug 03 23:15:21 2013
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_5_seq_510
    Sat Aug 03 23:15:32 2013
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_3_seq_15466.10925.822316315
    Sat Aug 03 23:17:18 2013
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_2_seq_17666.853.822333143
    Sat Aug 03 23:18:39 2013
    Media Recovery Log +FLASH/dgjmspl/archivelog/2013_08_01/thread_3_seq_15467.834.822333553
    Sat Aug 03 23:20:54 2013

    in Standby, thread 4 and 5 are both UNUSED, and size is incorrect (not equal to other redo log). I want to recreate it but cannot drop redo log. I follow Doc ID 740675.1.
    any idea what are the missing steps? thanks.
    ORA-01624: needed for crash recovery of instance UNNAMED_INSTANCE_5 (thread 5)
    select group#,thread#,archived,status,bytes from v$log;
    primary DB:
        GROUP#    THREAD# ARC STATUS                BYTES
             1          1 YES INACTIVE         1073741824
             2          1 YES INACTIVE         1073741824
             3          2 NO  CURRENT          1073741824
             4          2 YES INACTIVE         1073741824
             5          3 YES INACTIVE         1073741824
             6          3 YES INACTIVE         1073741824
             7          2 YES INACTIVE         1073741824
             8          1 NO  CURRENT          1073741824
             9          3 NO  CURRENT          1073741824
            10          4 YES INACTIVE         1073741824
            11          4 NO  CURRENT          1073741824
        GROUP#    THREAD# ARC STATUS                BYTES
            12          4 YES INACTIVE         1073741824
            13          5 YES INACTIVE         1073741824
            14          5 YES INACTIVE         1073741824
            15          5 NO  CURRENT          1073741824
    standby DB:
        GROUP#    THREAD# ARC STATUS                BYTES
             1          1 YES INACTIVE         1073741824
             2          1 YES INACTIVE         1073741824
             3          2 NO  CURRENT          1073741824
             4          2 YES INACTIVE         1073741824
             5          3 YES INACTIVE         1073741824
             6          3 YES INACTIVE         1073741824
             7          2 YES INACTIVE         1073741824
             8          1 NO  CURRENT          1073741824
             9          3 NO  CURRENT          1073741824
            10          4 YES INACTIVE         1073741824
            11          4 NO  CURRENT          1073741824
        GROUP#    THREAD# ARC STATUS                BYTES
            12          4 YES INACTIVE         1073741824
            13          5 YES INACTIVE         1073741824
            14          5 YES INACTIVE         1073741824
            15          5 NO  CURRENT          1073741824

  • Waiting for a thread to finish

    I've been researching this issue for a couple of days, but I dont think I know enough about threading to ask the right question in a search engine. Sorry if this is a basic blunder....I dont write swing often and it shows.
    I have a swing app that includes a long task so I have implemented a progress bar. I need to wait until the progress bar task completes before continuing to the rest of the method. I've tried:
    1. Putting the progress bar within a while loop (while task not complete...) but the progress bar dialog does not render fully. I've even added repaint, but still the dialog looks blank.
    2. SwingUtilities.invokeLater, but it doesnt wait until the progress bar is finished
    3. SwingUtilities.invokeAndWait, though after all the reading I did about deadlock conditions I didnt like the idea. However I was desperate so I tried it and got an error:"Cannot call invokeAndWait from the event dispatcher thread".
    4. Putting the code that needs to occur after the progress bar in an "invokeLater" thread
    5. I've also used the ProgressBarDemo from the java.sun example with the swingworker hoping the worker thread would handle the issue.
    A much smaller version of the code is below:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.border.Border;
    public class ProblemCode extends JFrame
         private JFrame jFrame = null;
         private JPanel jMain = null;
         private JButton startButton = null;
         public ProblemCode()
              initialize();
         public void initialize()
              //Setup the main application window size
              jFrame = new JFrame();
              jFrame.setContentPane(getJMainPanel());
              jFrame.pack();
              jFrame.addWindowListener(new java.awt.event.WindowAdapter()
                   public void windowClosing(java.awt.event.WindowEvent e)
                        dispose();
              SwingUtilities.invokeLater(new Runnable()
                public void run()
                    jFrame.setVisible(true);
         private JPanel getJMainPanel()
              if(jMain == null)
                   jMain = new JPanel();
                   jMain.add(getJStartButton());
              return jMain;
         private JButton getJStartButton()
              if (startButton == null)
                   startButton = new JButton();
                   startButton.setText("Start");
                   startButton.setVisible(true);
                   startButton.addActionListener(new ActionListener()
                       public void actionPerformed(ActionEvent e)
                           SwingUtilities.invokeLater(new Runnable()
                                 public void run()
                                          progBar();
                            System.out.println("Do this after the progress bar completes");
                            SwingUtilities.invokeLater(new Runnable()
                                 public void run()
                                      System.out.println("invokeLater doesnt work either....");
              return startButton;
         private void progBar()
            JFrame jProgFrame = new JFrame("JProgressBar Sample");
            jProgFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            Container content = jProgFrame.getContentPane();
            final JProgressBar progressBar = new JProgressBar();
            new Thread()
                private int counter = 0;
                private final int val = (int)(Math.random()*10)+1;
                public void run()
                    for(int i = 0;i <= 100;i++)
                        counter += val;
                        javax.swing.SwingUtilities.invokeLater( new Runnable()
                            public void run()
                                progressBar.setValue(counter);
                        try
                            Thread.sleep(500);
                        catch (InterruptedException e)
            }.start();
            progressBar.setStringPainted(true);
            Border border = BorderFactory.createTitledBorder("Reading...");
            progressBar.setBorder(border);
            content.add(progressBar, BorderLayout.NORTH);
            jProgFrame.setSize(300, 100);
            jProgFrame.setVisible(true);
         public static void main(String[] args)
              SwingUtilities.invokeLater(new Runnable()
                   public void run()
                        new ProblemCode();
    }Thank you for taking the time to review this.

    Hi,
    I made some tiny changes in yoyr code, marked with
    // PBHere the changed code
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.border.Border;
    public class ProblemCode extends JFrame {
        private JFrame jFrame = null;
        private JPanel jMain = null;
        private JButton startButton = null;
        public ProblemCode() {
         initialize();
        public void initialize() {
         // Setup the main application window size
         jFrame = new JFrame();
         jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // PB
         jFrame.setContentPane(getJMainPanel());
         jFrame.pack();
         jFrame.addWindowListener(new java.awt.event.WindowAdapter() {
             public void windowClosing(java.awt.event.WindowEvent e) {
              dispose();
         SwingUtilities.invokeLater(new Runnable() {
             public void run() {
              jFrame.setVisible(true);
        private JPanel getJMainPanel() {
         if (jMain == null) {
             jMain = new JPanel();
             jMain.add(getJStartButton());
         return jMain;
        private JButton getJStartButton() {
         if (startButton == null) {
             startButton = new JButton();
             startButton.setText("Start");
             startButton.setVisible(true);
             startButton.addActionListener(new ActionListener() {
              public void actionPerformed(ActionEvent e) {
                  SwingUtilities.invokeLater(new Runnable() {
                   public void run() {
                       progBar();
                  System.out
                       .println("Do this after the progress bar completes");
                  SwingUtilities.invokeLater(new Runnable() {
                   public void run() {
                       System.out
                            .println("invokeLater doesnt work either....");
         return startButton;
        private void progBar() {
         JFrame jProgFrame = new JFrame("JProgressBar Sample");
         jProgFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         Container content = jProgFrame.getContentPane();
         final int val = (int) (Math.random() * 10) + 1; // PB
         final JProgressBar progressBar = new JProgressBar(0, 100 * val); // PB
         progressBar.setStringPainted(true);
         Border border = BorderFactory.createTitledBorder("Reading...");
         progressBar.setBorder(border);
         content.add(progressBar, BorderLayout.NORTH);
         jProgFrame.setSize(300, 100);
         jProgFrame.setVisible(true);
         // PB
         final Thread longTask = new Thread() {
             private int counter = 0;
             public void run() {
              for (int i = 0; i <= 100; i++) {
                  counter += val;
                  javax.swing.SwingUtilities.invokeLater(new Runnable() {
                   public void run() {
                       progressBar.setValue(counter);
                  try {
                   Thread.sleep(100); // PB
                  } catch (InterruptedException e) {
         longTask.start();
         // PB
         Thread followUpTask = new Thread(new Runnable() {
             @Override
             public void run() {
              try {
                  System.out.println("Follow up task is waiting");
                  longTask.join();
                  System.out.println("Follow up task  continues");
              } catch (InterruptedException e) {
                  e.printStackTrace();
         followUpTask.start();
        public static void main(String[] args) {
         SwingUtilities.invokeLater(new Runnable() {
             public void run() {
              new ProblemCode();
    }Piet

  • Waiting for multiple threads to complete.......

    Search the forum archives but have not found a definitive solution...
    I have java app which spawns many threads (runnable objects) in the main() method. As one would expect, main exits before the threads finish but I don't want this to happen. I want to wait until all the threads have completed so I can use the results (stored in a vector) in the main thread....kindof like waitformultipleobjects in windows NT...
    does any guru out there know how best to achieve this????
    thanks

    Have you tried using a ThreadGroup? I imagine something like the following. I think it is not so nice because of the empty while loop but you get the idea.
    public class ThreadGroupTest {
         private static class Dummy extends Thread{
              private long sleepms;
              private String msg = null;
              public Dummy(ThreadGroup tg,long sleepms){
                   super(tg,"test"+String.valueOf(sleepms));
                   this.sleepms = sleepms;     
              public void run(){
                   try {
                        Thread.sleep(sleepms);
                   } catch (InterruptedException e) {
                   this.msg="Slept "+String.valueOf(sleepms)+" millis.";
              public String getMsg() {
                   return msg;
         public static void main(String[] args) {
              Dummy[] threads = new Dummy[10];
              ThreadGroup tg = new ThreadGroup("test");
              for(int i = 0;i<10;i++){
                   threads[i] = new Dummy(tg,(i+1)*1000);
                   threads.start();
              while(tg.activeCount()>0){
                   System.out.println(tg.activeCount());
              for(int i=0;i<threads.length;i++){
                   System.out.println(threads[i].getMsg());
    Hope that helps.

  • Waiting for multiple threads?

    I'm currently writing an app which, when a user opens a GUI screen, several threads are created which go away to load data. A "loading..." message should be displayed until all loading threads have completed.
    What's the best way to implement this?

    Ah yes. I was doing that, ish, but was doing:
    t1.start();
    t1.join();
    t2.start();
    t2.join();
    But of course it should have been:
    t1.start();
    t2.start();
    t1.join();
    t2.join();
    Cool, thanks!

  • CUPS: Printer always waits for more data, and finally times out.

    I apologise if this should be categorised as" system administration" rather than "installation". The reason why I chose this category was that the error happened right after installing and setting up cups, so it should not have to do with fine-tuning or be the result of a particularly specific situation.
    I have had a novel kind of problem with printing since I first installed Arch Linux:
    Whenever I print - regardless of application -, my OKI 431 printer will always wait for more data after having completed the print job (as shown in its small display, where it keeps saying 'DATA' even after the last printed page has come out). After 25 to 30 seconds of such waiting, it will print out two pages, the first one empty, the second one saying:
    ERROR:
    timeout
    OFFENDING COMMAND:
    timeout
    STACK:
    The printer display then goes back to saying 'ONLINE'. If I print several documents WITHIN this 25 to 30 sec delay, i.e. in fast succession, I only get the two pages once, i.e. after the last of these jobs has been printed.
    What seems to be related to that is the status message on the "Printers" page of CUPS' Web interface: It says
    Idle - "Sending data to printer."
    all the time, even though I am not printing anything. (And this was the same before the update.)
    Printing is otherwise completely fine - the one practical problem is I have an ever-growing pile of empty pages mixed with pages containing the above error message next to my printer, i.e. two extra pages after each printout. (The one workaround I have found so far is quickly switching off the printer after within the 25 - 30 secs time window.) I have tried to google this problem with various search term combinations, but have not been able to find pages specific to this problem anywhere.
    What I have tried out was wiping the /etc/cups directory, updating cups, adding the printer again using lpadmin, and setting it as the default printer with lpoptions (both as explained in the Arch Wiki page). This has not changed anything relevant about the behaviour.
    (The one effect this has had is that pointing some browsers (Opera, Dillo) to localhost:631 now gets a "Bad request" response from CUPS, but on most browsers (Mozilla, Qupzilla, Midori, Google Chrome, Lynx) it gets the normal Web interface. But this is probably not related to the problem.)
    I will try to give some basic context:
    > uname -a
    Linux bertrandrussell 3.12.9-2-ARCH #1 SMP PREEMPT Fri Jan 31 10:22:54 CET 2014 x86_64 GNU/Linux
    > pacman -Qi cups
    Version : 1.7.1-3
    > cat /etc/cups/printers.conf
    # Printer configuration file for CUPS v1.7.1
    # Written by cupsd on 2014-02-16 12:24
    # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING
    <Printer OKI>
    UUID urn:uuid:6414e199-9c1c-3330-4b66-5311b2bff8e8
    Info OKI
    MakeModel OKI DATA CORP B431(PS)
    DeviceURI usb://OKI%20DATA%20CORP/B431?serial=AK17008654
    State Idle
    StateTime 1392549811
    Type 8425556
    Accepting Yes
    Shared Yes
    JobSheets none none
    QuotaPeriod 0
    PageLimit 0
    KLimit 0
    OpPolicy default
    ErrorPolicy abort-job
    </Printer>
    Can anybody help me on where to start looking?
    Thank you very much for any help!
    Florian

    It seems I have lost my first error_log, but I have produced a fresh one. It contains precisely what was logged since the reboot (albeit not the marker of when exactly I printed the document):
    I'll try the wrapper - here goes:
    I [22/Feb/2014:18:13:07 +0100] Listening to [v1.::1]:631 (IPv6)
    I [22/Feb/2014:18:13:07 +0100] Listening to 127.0.0.1:631 (IPv4)
    I [22/Feb/2014:18:13:07 +0100] Listening to /run/cups/cups.sock (Domain)
    I [22/Feb/2014:18:13:07 +0100] Remote access is disabled.
    D [22/Feb/2014:18:13:07 +0100] Added auto ServerAlias bertrandrussell
    I [22/Feb/2014:18:13:07 +0100] Loaded configuration file "/etc/cups/cupsd.conf"
    D [22/Feb/2014:18:13:07 +0100] Repairing ownership of "/run/cups"
    D [22/Feb/2014:18:13:07 +0100] Creating missing directory "/run/cups/certs"
    D [22/Feb/2014:18:13:07 +0100] Repairing ownership of "/run/cups/certs"
    D [22/Feb/2014:18:13:07 +0100] Repairing access permissions of "/run/cups/certs"
    I [22/Feb/2014:18:13:07 +0100] Using default TempDir of /var/spool/cups/tmp...
    I [22/Feb/2014:18:13:07 +0100] Configured for up to 100 clients.
    I [22/Feb/2014:18:13:07 +0100] Allowing up to 100 client connections per host.
    I [22/Feb/2014:18:13:07 +0100] Using policy "default" as the default.
    I [22/Feb/2014:18:13:07 +0100] Full reload is required.
    I [22/Feb/2014:18:13:07 +0100] Loaded MIME database from "/usr/share/cups/mime" and "/etc/cups": 39 types, 52 filters...
    D [22/Feb/2014:18:13:07 +0100] Loading printer OKI...
    D [22/Feb/2014:18:13:07 +0100] load_ppd: Loading /var/cache/cups/OKI.data...
    D [22/Feb/2014:18:13:07 +0100] cupsdRegisterPrinter(p=0x7fa99aa6d130(OKI))
    I [22/Feb/2014:18:13:07 +0100] Loading job cache file "/var/cache/cups/job.cache"...
    D [22/Feb/2014:18:13:07 +0100] [Job 1] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 2] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 3] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 4] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 5] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 6] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 7] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 8] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 9] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 10] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 11] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 12] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 13] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 14] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 15] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 16] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 17] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 18] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 19] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 20] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 21] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 22] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 23] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 24] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 25] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 26] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 27] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 28] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 29] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 30] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 31] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 32] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 33] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 34] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 35] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 36] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 37] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 38] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 39] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 40] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 41] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 42] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 43] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 44] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 45] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 46] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 47] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 48] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 49] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 50] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 51] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 52] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 53] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 54] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 55] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 56] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 57] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 58] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 59] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 60] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 61] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 62] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 63] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 64] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 65] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 66] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 67] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 68] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 69] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 70] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 71] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 72] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 73] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 74] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 75] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 76] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 77] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 78] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 79] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 80] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 81] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 82] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 83] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 84] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 85] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 86] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 87] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 88] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 89] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 90] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 91] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 92] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 93] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 94] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 95] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 96] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 97] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 98] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 99] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 100] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 101] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 102] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 103] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 104] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 105] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 106] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 107] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 108] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 109] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 110] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 111] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 112] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 113] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 114] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 115] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 116] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 117] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 118] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 119] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 120] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 121] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 122] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 123] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 124] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 125] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 126] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 127] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 128] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 129] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 130] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 131] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 132] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 133] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 134] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 135] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 136] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 137] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 138] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 139] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 140] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 141] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 142] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 143] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 144] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 145] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 146] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 147] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 148] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 149] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 150] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 151] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 152] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 153] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 154] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 155] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 156] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 157] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 158] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 159] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 160] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 161] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 162] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 163] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 164] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 165] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 166] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 167] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 168] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 169] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 170] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 171] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 172] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 173] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 174] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 175] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 176] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 177] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 178] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 179] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 180] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 181] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 182] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 183] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 184] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 185] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 186] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 187] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 188] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 189] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 190] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 191] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 192] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 193] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 194] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 195] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 196] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 197] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 198] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 199] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 200] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 201] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 202] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 203] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 204] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 205] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 206] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 207] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 208] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 209] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 210] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 211] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 212] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 213] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 214] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 215] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 216] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 217] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 218] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 219] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 220] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 221] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 222] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 223] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 224] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 225] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 226] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 227] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 228] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 229] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 230] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 231] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 232] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 233] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 234] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 235] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 236] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 237] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 238] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 239] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 240] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 241] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 242] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 243] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 244] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 245] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 246] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 247] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 248] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 249] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 250] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 251] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 252] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 253] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 254] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 255] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 256] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 257] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 258] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 259] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 260] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 261] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 262] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 263] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 264] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 265] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 266] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 267] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 268] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 269] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 270] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 271] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 272] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 273] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 274] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 275] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 276] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 277] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 278] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 279] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 280] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 281] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 282] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 283] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 284] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 285] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 286] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 287] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 288] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 289] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 290] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 291] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 292] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 293] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 294] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 295] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 296] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 297] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 298] Loading from cache...
    D [22/Feb/2014:18:13:07 +0100] [Job 299] Loading from cache...
    I [22/Feb/2014:18:13:07 +0100] Full reload complete.
    D [22/Feb/2014:18:13:07 +0100] cupsdCleanFiles(path="/var/spool/cups/tmp", pattern="(null)")
    I [22/Feb/2014:18:13:07 +0100] Cleaning out old files in "/var/spool/cups/tmp".
    D [22/Feb/2014:18:13:07 +0100] cupsdCleanFiles(path="/var/cache/cups", pattern="*.ipp")
    I [22/Feb/2014:18:13:07 +0100] Cleaning out old files in "/var/cache/cups".
    D [22/Feb/2014:18:13:07 +0100] systemd_checkin: Matched existing listener /run/cups/cups.sock with fd 3...
    D [22/Feb/2014:18:13:07 +0100] systemd_checkin: Adding new listener [v1.::] with fd 4...
    D [22/Feb/2014:18:13:07 +0100] Calling FindDeviceById(cups-OKI)
    D [22/Feb/2014:18:13:08 +0100] FindDeviceById failed: org.freedesktop.ColorManager.NotFound:device id 'cups-OKI' does not exist
    D [22/Feb/2014:18:13:08 +0100] Using profile ID "OKI-Gray..".
    D [22/Feb/2014:18:13:08 +0100] Calling CreateProfile(OKI-Gray..,temp)
    D [22/Feb/2014:18:13:09 +0100] Created profile "/org/freedesktop/ColorManager/profiles/OKI_Gray__".
    I [22/Feb/2014:18:13:09 +0100] Registering ICC color profiles for "OKI".
    D [22/Feb/2014:18:13:09 +0100] Calling CreateDevice(cups-OKI,temp)
    D [22/Feb/2014:18:13:09 +0100] Created device "/org/freedesktop/ColorManager/devices/cups_OKI".
    D [22/Feb/2014:18:13:09 +0100] Calling /org/freedesktop/ColorManager/devices/cups_OKI:AddProfile(/org/freedesktop/ColorManager/profiles/OKI_Gray__) [soft]
    E [22/Feb/2014:18:13:09 +0100] Unable to bind socket for address [v1.::1]:631 - Address already in use.
    E [22/Feb/2014:18:13:09 +0100] Unable to bind socket for address 127.0.0.1:631 - Address already in use.
    I [22/Feb/2014:18:13:09 +0100] Listening to /run/cups/cups.sock:631 on fd 3...
    I [22/Feb/2014:18:13:09 +0100] Listening to [v1.::]:631 on fd 4...
    I [22/Feb/2014:18:13:09 +0100] Resuming new connection processing...
    D [22/Feb/2014:18:13:09 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:13:09 +0100] Discarding unused server-started event...
    D [22/Feb/2014:18:13:10 +0100] Report: clients=0
    D [22/Feb/2014:18:13:10 +0100] Report: jobs=299
    D [22/Feb/2014:18:13:10 +0100] Report: jobs-active=0
    D [22/Feb/2014:18:13:10 +0100] Report: printers=1
    D [22/Feb/2014:18:13:10 +0100] Report: stringpool-string-count=1578
    D [22/Feb/2014:18:13:10 +0100] Report: stringpool-alloc-bytes=8880
    D [22/Feb/2014:18:13:10 +0100] Report: stringpool-total-bytes=27352
    D [22/Feb/2014:18:13:56 +0100] [Client 13] Accepted from localhost:631 (IPv6)
    D [22/Feb/2014:18:13:56 +0100] [Client 13] Waiting for request.
    D [22/Feb/2014:18:13:59 +0100] [Client 13] GET / HTTP/1.1
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:13:59 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:13:59 +0100] [Client 13] GET /cups.css HTTP/1.1
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:13:59 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:13:59 +0100] [Client 13] GET /images/left.gif HTTP/1.1
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:13:59 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:13:59 +0100] [Client 14] Accepted from localhost:631 (IPv6)
    D [22/Feb/2014:18:13:59 +0100] [Client 14] Waiting for request.
    D [22/Feb/2014:18:13:59 +0100] [Client 15] Accepted from localhost:631 (IPv6)
    D [22/Feb/2014:18:13:59 +0100] [Client 15] Waiting for request.
    D [22/Feb/2014:18:13:59 +0100] [Client 14] GET /images/right.gif HTTP/1.1
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:13:59 +0100] [Client 14] No authentication data provided.
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:13:59 +0100] [Client 16] Accepted from localhost:631 (IPv6)
    D [22/Feb/2014:18:13:59 +0100] [Client 16] Waiting for request.
    D [22/Feb/2014:18:13:59 +0100] [Client 15] GET /images/cups-icon.png HTTP/1.1
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:13:59 +0100] [Client 15] No authentication data provided.
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:13:59 +0100] [Client 16] GET /images/sel.gif HTTP/1.1
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:13:59 +0100] [Client 16] No authentication data provided.
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:13:59 +0100] [Client 13] GET /images/unsel.gif HTTP/1.1
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:13:59 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:13:59 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:14:02 +0100] [Client 14] GET /printers/ HTTP/1.1
    D [22/Feb/2014:18:14:02 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:14:02 +0100] [Client 14] No authentication data provided.
    D [22/Feb/2014:18:14:02 +0100] [CGI] argv[0] = "/usr/lib/cups/cgi-bin/printers.cgi"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[0] = "CUPS_CACHEDIR=/var/cache/cups"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[1] = "CUPS_DATADIR=/usr/share/cups"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[2] = "CUPS_DOCROOT=/usr/share/cups/doc"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[3] = "CUPS_FONTPATH=/usr/share/cups/fonts"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[4] = "CUPS_REQUESTROOT=/var/spool/cups"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[5] = "CUPS_SERVERBIN=/usr/lib/cups"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[6] = "CUPS_SERVERROOT=/etc/cups"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[7] = "CUPS_STATEDIR=/run/cups"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[8] = "HOME=/var/spool/cups/tmp"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[9] = "PATH=/usr/lib/cups/filter:/usr/bin:/usr/bin:/bin:/usr/bin"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[10] = "SERVER_ADMIN=root@bertrandrussell"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[11] = "SOFTWARE=CUPS/1.7.1"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[12] = "TMPDIR=/var/spool/cups/tmp"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[13] = "USER=root"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[14] = "CUPS_MAX_MESSAGE=2047"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[15] = "CUPS_SERVER=/run/cups/cups.sock"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[16] = "CUPS_ENCRYPTION=IfRequested"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[17] = "IPP_PORT=631"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[18] = "LANG=en_US.UTF8"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[19] = "REDIRECT_STATUS=1"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[20] = "GATEWAY_INTERFACE=CGI/1.1"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[21] = "SERVER_NAME=localhost"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[22] = "SERVER_PORT=631"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[23] = "REMOTE_ADDR=[v1.::1]"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[24] = "REMOTE_HOST=localhost"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[25] = "SCRIPT_NAME=/printers/"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[26] = "SCRIPT_FILENAME=/usr/share/cups/doc/printers/"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[27] = "SERVER_PROTOCOL=HTTP/1.1"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[28] = "HTTP_USER_AGENT=Mozilla/5.0 (X11; Linux x86_64; rv:27.0) Gecko/20100101 Firefox/27.0"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[29] = "HTTP_REFERER=http://localhost:631/"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[30] = "REQUEST_METHOD=GET"
    D [22/Feb/2014:18:14:02 +0100] [CGI] envp[31] = "QUERY_STRING="
    D [22/Feb/2014:18:14:02 +0100] [CGI] Started /usr/lib/cups/cgi-bin/printers.cgi (PID 668)
    I [22/Feb/2014:18:14:02 +0100] [Client 14] Started "/usr/lib/cups/cgi-bin/printers.cgi" (pid=668)
    D [22/Feb/2014:18:14:02 +0100] [Client 14] file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [CGI] org.cups.sid cookie not found, initializing!
    D [22/Feb/2014:18:14:02 +0100] [CGI] org.cups.sid cookie is "4d43abea28d1837cbb1175a07cd5bb45"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: SECTION="printers"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: REFRESH_PAGE=""
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Accepted from localhost (Domain)
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Waiting for request.
    D [22/Feb/2014:18:14:02 +0100] [Client 18] POST / HTTP/1.1
    D [22/Feb/2014:18:14:02 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Active clients"
    D [22/Feb/2014:18:14:02 +0100] [Client 18] No authentication data provided.
    D [22/Feb/2014:18:14:02 +0100] [Client 18] 2.0 CUPS-Get-Default 1
    D [22/Feb/2014:18:14:02 +0100] CUPS-Get-Default
    D [22/Feb/2014:18:14:02 +0100] CUPS-Get-Default client-error-not-found: No default printer.
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Returning IPP client-error-not-found for CUPS-Get-Default (no URI) from localhost
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Content-Length: 113
    D [22/Feb/2014:18:14:02 +0100] [Client 18] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=113, response=0x7fa99aaad580(IPP_IDLE), pipe_pid=0, file=-1
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Writing IPP response, ipp_state=DATA, old wused=0, new wused=0
    D [22/Feb/2014:18:14:02 +0100] [Client 18] bytes=0, http_state=0, data_remaining=0
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Waiting for request.
    D [22/Feb/2014:18:14:02 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Active clients"
    D [22/Feb/2014:18:14:02 +0100] [CGI] show_all_printers(http=0x7f1162e63260, user="(null)")
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: TITLE="Printers"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: SERVER_NAME="localhost"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: CUPS_VERSION="CUPS v1.7.1"
    D [22/Feb/2014:18:14:02 +0100] [Client 14] CGI data ready to be sent.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] Script header: Set-Cookie: org.cups.sid=4d43abea28d1837cbb1175a07cd5bb45; path=/;
    D [22/Feb/2014:18:14:02 +0100] Script header: Content-Type: text/html;charset=utf-8
    D [22/Feb/2014:18:14:02 +0100] Script header:
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] CGI data ready to be sent.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 18] POST / HTTP/1.1
    D [22/Feb/2014:18:14:02 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Active clients"
    D [22/Feb/2014:18:14:02 +0100] [Client 18] No authentication data provided.
    D [22/Feb/2014:18:14:02 +0100] [Client 18] 2.0 CUPS-Get-Printers 2
    D [22/Feb/2014:18:14:02 +0100] CUPS-Get-Printers
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Returning IPP successful-ok for CUPS-Get-Printers (no URI) from localhost
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Content-Length: 292
    D [22/Feb/2014:18:14:02 +0100] [Client 18] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=292, response=0x7fa99aadf780(IPP_IDLE), pipe_pid=0, file=-1
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Writing IPP response, ipp_state=DATA, old wused=0, new wused=0
    D [22/Feb/2014:18:14:02 +0100] [Client 18] bytes=0, http_state=0, data_remaining=0
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Waiting for request.
    D [22/Feb/2014:18:14:02 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Active clients"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: TOTAL="1"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: SERVER_NAME="localhost"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: CUPS_VERSION="CUPS v1.7.1"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetArray: printer_state[0]="3"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetArray: printer_state_message[0]=""
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetArray: admin_uri[0]="/admin/"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetArray: printer_uri_supported[0]="/printers/OKI"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetArray: printer_name[0]="OKI"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetArray: printer_location[0]=""
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetArray: printer_info[0]="OKI"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetArray: printer_make_and_model[0]="OKI DATA CORP B431(PS)"
    D [22/Feb/2014:18:14:02 +0100] [CGI] cgiSetVariable: THISURL="/printers/"
    D [22/Feb/2014:18:14:02 +0100] [Client 14] CGI data ready to be sent.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] CGI data ready to be sent.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] CGI data ready to be sent.
    D [22/Feb/2014:18:14:02 +0100] [Client 18] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:14:02 +0100] [Client 18] Closing connection.
    D [22/Feb/2014:18:14:02 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Active clients"
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] CGI data ready to be sent.
    D [22/Feb/2014:18:14:02 +0100] PID 668 (/usr/lib/cups/cgi-bin/printers.cgi) exited with no errors.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_GET_SEND, data_encoding=HTTP_ENCODING_CHUNKED, data_remaining=0, response=(nil)(), pipe_pid=668, file=17
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for CGI data.
    D [22/Feb/2014:18:14:02 +0100] [Client 14] Waiting for request.
    D [22/Feb/2014:18:14:02 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Accepted from localhost (Domain)
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Waiting for request.
    D [22/Feb/2014:18:14:21 +0100] Report: clients=5
    D [22/Feb/2014:18:14:21 +0100] Report: jobs=299
    D [22/Feb/2014:18:14:21 +0100] Report: jobs-active=0
    D [22/Feb/2014:18:14:21 +0100] Report: printers=1
    D [22/Feb/2014:18:14:21 +0100] Report: stringpool-string-count=1582
    D [22/Feb/2014:18:14:21 +0100] Report: stringpool-alloc-bytes=8904
    D [22/Feb/2014:18:14:21 +0100] Report: stringpool-total-bytes=27416
    D [22/Feb/2014:18:14:21 +0100] [Client 17] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Closing connection.
    D [22/Feb/2014:18:14:21 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Accepted from localhost (Domain)
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Waiting for request.
    D [22/Feb/2014:18:14:21 +0100] [Client 17] POST / HTTP/1.1
    D [22/Feb/2014:18:14:21 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:14:21 +0100] [Client 17] No authentication data provided.
    D [22/Feb/2014:18:14:21 +0100] [Client 17] 2.0 CUPS-Get-Printers 1
    D [22/Feb/2014:18:14:21 +0100] CUPS-Get-Printers
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Returning IPP successful-ok for CUPS-Get-Printers (no URI) from localhost
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Content-Length: 1073
    D [22/Feb/2014:18:14:21 +0100] [Client 17] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=1073, response=0x7fa99aaad7c0(IPP_IDLE), pipe_pid=0, file=-1
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Writing IPP response, ipp_state=DATA, old wused=0, new wused=0
    D [22/Feb/2014:18:14:21 +0100] [Client 17] bytes=0, http_state=0, data_remaining=0
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Waiting for request.
    D [22/Feb/2014:18:14:21 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:14:21 +0100] [Client 17] POST / HTTP/1.1
    D [22/Feb/2014:18:14:21 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:14:21 +0100] [Client 17] No authentication data provided.
    D [22/Feb/2014:18:14:21 +0100] [Client 17] 2.0 CUPS-Get-Default 2
    D [22/Feb/2014:18:14:21 +0100] CUPS-Get-Default
    D [22/Feb/2014:18:14:21 +0100] CUPS-Get-Default client-error-not-found: No default printer.
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Returning IPP client-error-not-found for CUPS-Get-Default (no URI) from localhost
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Content-Length: 113
    D [22/Feb/2014:18:14:21 +0100] [Client 17] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=113, response=0x7fa99aae73c0(IPP_IDLE), pipe_pid=0, file=-1
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Writing IPP response, ipp_state=DATA, old wused=0, new wused=0
    D [22/Feb/2014:18:14:21 +0100] [Client 17] bytes=0, http_state=0, data_remaining=0
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Waiting for request.
    D [22/Feb/2014:18:14:21 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:14:21 +0100] [Client 17] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:14:21 +0100] [Client 17] Closing connection.
    D [22/Feb/2014:18:14:21 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:14:30 +0100] [Client 16] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:14:30 +0100] [Client 16] Closing connection.
    D [22/Feb/2014:18:14:30 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:14:30 +0100] [Client 15] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:14:30 +0100] [Client 15] Closing connection.
    D [22/Feb/2014:18:14:30 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:14:30 +0100] [Client 13] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:14:30 +0100] [Client 13] Closing connection.
    D [22/Feb/2014:18:14:30 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Accepted from localhost (Domain)
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Waiting for request.
    D [22/Feb/2014:18:14:32 +0100] [Client 13] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Closing connection.
    D [22/Feb/2014:18:14:32 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Accepted from localhost (Domain)
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Waiting for request.
    D [22/Feb/2014:18:14:32 +0100] [Client 13] POST / HTTP/1.1
    D [22/Feb/2014:18:14:32 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:14:32 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:14:32 +0100] [Client 13] 2.0 CUPS-Get-Printers 3
    D [22/Feb/2014:18:14:32 +0100] CUPS-Get-Printers
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Returning IPP successful-ok for CUPS-Get-Printers (no URI) from localhost
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Content-Length: 1073
    D [22/Feb/2014:18:14:32 +0100] [Client 13] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=1073, response=0x7fa99aaad750(IPP_IDLE), pipe_pid=0, file=-1
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Writing IPP response, ipp_state=DATA, old wused=0, new wused=0
    D [22/Feb/2014:18:14:32 +0100] [Client 13] bytes=0, http_state=0, data_remaining=0
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Waiting for request.
    D [22/Feb/2014:18:14:32 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:14:32 +0100] [Client 13] POST / HTTP/1.1
    D [22/Feb/2014:18:14:32 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:14:32 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:14:32 +0100] [Client 13] 2.0 CUPS-Get-Default 4
    D [22/Feb/2014:18:14:32 +0100] CUPS-Get-Default
    D [22/Feb/2014:18:14:32 +0100] CUPS-Get-Default client-error-not-found: No default printer.
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Returning IPP client-error-not-found for CUPS-Get-Default (no URI) from localhost
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Content-Length: 113
    D [22/Feb/2014:18:14:32 +0100] [Client 13] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=113, response=0x7fa99aaad7a0(IPP_IDLE), pipe_pid=0, file=-1
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Writing IPP response, ipp_state=DATA, old wused=0, new wused=0
    D [22/Feb/2014:18:14:32 +0100] [Client 13] bytes=0, http_state=0, data_remaining=0
    D [22/Feb/2014:18:14:32 +0100] [Client 13] Waiting for request.
    D [22/Feb/2014:18:14:32 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [22/Feb/2014:18:14:33 +0100] [Client 14] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:14:33 +0100] [Client 14] Closing connection.
    D [22/Feb/2014:18:14:33 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:14:44 +0100] [Client 13] POST /printers/OKI HTTP/1.1
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:14:44 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:14:44 +0100] [Client 13] 2.0 Create-Job 5
    D [22/Feb/2014:18:14:44 +0100] Create-Job ipp://localhost:631/printers/OKI
    D [22/Feb/2014:18:14:44 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients"
    D [22/Feb/2014:18:14:44 +0100] add_job: requesting-user-name="lehrer"
    D [22/Feb/2014:18:14:44 +0100] Adding default job-sheets values "none,none"...
    I [22/Feb/2014:18:14:44 +0100] [Job 300] Adding start banner page "none".
    D [22/Feb/2014:18:14:44 +0100] Discarding unused job-created event...
    I [22/Feb/2014:18:14:44 +0100] [Job 300] Queued on "OKI" by "lehrer".
    D [22/Feb/2014:18:14:44 +0100] [Client 13] Returning IPP successful-ok for Create-Job (ipp://localhost:631/printers/OKI) from localhost
    D [22/Feb/2014:18:14:44 +0100] [Client 13] Content-Length: 183
    D [22/Feb/2014:18:14:44 +0100] [Client 13] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=183, response=0x7fa99aaad890(IPP_IDLE), pipe_pid=0, file=-1
    D [22/Feb/2014:18:14:44 +0100] [Client 13] Writing IPP response, ipp_state=DATA, old wused=0, new wused=0
    D [22/Feb/2014:18:14:44 +0100] [Client 13] bytes=0, http_state=0, data_remaining=0
    D [22/Feb/2014:18:14:44 +0100] [Client 13] Waiting for request.
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Dirty files", busy="Active clients and dirty files"
    D [22/Feb/2014:18:14:44 +0100] [Client 13] POST /printers/OKI HTTP/1.1
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Dirty files"
    D [22/Feb/2014:18:14:44 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:14:44 +0100] [Client 13] 2.0 Send-Document 6
    D [22/Feb/2014:18:14:44 +0100] Send-Document ipp://localhost:631/printers/OKI
    D [22/Feb/2014:18:14:44 +0100] cupsdIsAuthorized: requesting-user-name="lehrer"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Auto-typing file...
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Request file type is application/pdf.
    D [22/Feb/2014:18:14:44 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    I [22/Feb/2014:18:14:44 +0100] [Job 300] File of type application/pdf queued by "lehrer".
    I [22/Feb/2014:18:14:44 +0100] [Job 300] Adding end banner page "none".
    D [22/Feb/2014:18:14:44 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] time-at-processing=1393089284
    D [22/Feb/2014:18:14:44 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [22/Feb/2014:18:14:44 +0100] Discarding unused printer-state-changed event...
    D [22/Feb/2014:18:14:44 +0100] [Job 300] 3 filters for job:
    D [22/Feb/2014:18:14:44 +0100] [Job 300] pdftopdf (application/pdf to application/vnd.cups-pdf, cost 66)
    D [22/Feb/2014:18:14:44 +0100] [Job 300] pdftops (application/vnd.cups-pdf to application/vnd.cups-postscript, cost 100)
    D [22/Feb/2014:18:14:44 +0100] [Job 300] - (application/vnd.cups-postscript to printer/OKI, cost 0)
    D [22/Feb/2014:18:14:44 +0100] [Job 300] job-sheets=none,none
    D [22/Feb/2014:18:14:44 +0100] [Job 300] argv[0]="OKI"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] argv[1]="300"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] argv[2]="lehrer"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] argv[3]="32_noun_clauses"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] argv[4]="1"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] argv[5]="Duplex=None InputSlot=Upper PageSize=A4 job-uuid=urn:uuid:f6fd7095-afa2-3a84-4db2-7a65f497728a job-originating-host-name=localhost time-at-creation=1393089284 time-at-processing=1393089284"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] argv[6]="/var/spool/cups/d00300-001"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[0]="CUPS_CACHEDIR=/var/cache/cups"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[1]="CUPS_DATADIR=/usr/share/cups"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[2]="CUPS_DOCROOT=/usr/share/cups/doc"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[3]="CUPS_FONTPATH=/usr/share/cups/fonts"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[4]="CUPS_REQUESTROOT=/var/spool/cups"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[5]="CUPS_SERVERBIN=/usr/lib/cups"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[6]="CUPS_SERVERROOT=/etc/cups"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[7]="CUPS_STATEDIR=/run/cups"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[8]="HOME=/var/spool/cups/tmp"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[9]="PATH=/usr/lib/cups/filter:/usr/bin:/usr/bin:/bin:/usr/bin"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[10]="SERVER_ADMIN=root@bertrandrussell"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[11]="SOFTWARE=CUPS/1.7.1"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[12]="TMPDIR=/var/spool/cups/tmp"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[13]="USER=root"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[14]="CUPS_MAX_MESSAGE=2047"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[15]="CUPS_SERVER=/run/cups/cups.sock"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[16]="CUPS_ENCRYPTION=IfRequested"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[17]="IPP_PORT=631"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[18]="CHARSET=utf-8"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[19]="LANG=de_DE.UTF-8"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[20]="PPD=/etc/cups/ppd/OKI.ppd"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[21]="RIP_MAX_CACHE=128m"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[22]="CONTENT_TYPE=application/pdf"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[23]="DEVICE_URI=usb://OKI%20DATA%20CORP/B431?serial=AK17008654"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[24]="PRINTER_INFO=OKI"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[25]="PRINTER_LOCATION="
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[26]="PRINTER=OKI"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[27]="PRINTER_STATE_REASONS=none"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[28]="CUPS_FILETYPE=document"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[29]="FINAL_CONTENT_TYPE=printer/OKI"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] envp[30]="AUTH_I****"
    I [22/Feb/2014:18:14:44 +0100] [Job 300] Started filter /usr/lib/cups/filter/pdftopdf (PID 703)
    I [22/Feb/2014:18:14:44 +0100] [Job 300] Started filter /usr/lib/cups/filter/pdftops (PID 704)
    I [22/Feb/2014:18:14:44 +0100] [Job 300] Started backend /usr/lib/cups/backend/usb (PID 705)
    D [22/Feb/2014:18:14:44 +0100] Discarding unused job-state-changed event...
    D [22/Feb/2014:18:14:44 +0100] [Client 13] Returning IPP successful-ok for Send-Document (ipp://localhost:631/printers/OKI) from localhost
    D [22/Feb/2014:18:14:44 +0100] [Client 13] Content-Length: 175
    D [22/Feb/2014:18:14:44 +0100] [Client 13] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=175, response=0x7fa99aae6ec0(IPP_IDLE), pipe_pid=0, file=-1
    D [22/Feb/2014:18:14:44 +0100] [Client 13] Writing IPP response, ipp_state=DATA, old wused=0, new wused=0
    D [22/Feb/2014:18:14:44 +0100] [Client 13] bytes=0, http_state=0, data_remaining=0
    D [22/Feb/2014:18:14:44 +0100] [Client 13] Waiting for request.
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Active clients and dirty files"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] pdftops - copying to temp print file "/var/spool/cups/tmp/002c0530d3451"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Loading USB quirks from "/usr/share/cups/usb".
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Loaded 67 quirks.
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Printing on printer with URI: usb://OKI%20DATA%20CORP/B431?serial=AK17008654
    D [22/Feb/2014:18:14:44 +0100] [Job 300] libusb_get_device_list=12
    I [22/Feb/2014:18:14:44 +0100] [Job 300] Waiting for printer to become available.
    D [22/Feb/2014:18:14:44 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [22/Feb/2014:18:14:44 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:14:44 +0100] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Set job-printer-state-message to "Waiting for printer to become available.", current level=INFO
    D [22/Feb/2014:18:14:44 +0100] Discarding unused job-progress event...
    D [22/Feb/2014:18:14:44 +0100] Discarding unused printer-state-changed event...
    D [22/Feb/2014:18:14:44 +0100] [Job 300] PID 703 (/usr/lib/cups/filter/pdftopdf) exited with no errors.
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Printer make and model: Oki B431
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Running command line for pstops: pstops 300 lehrer 32_noun_clauses 1 'Duplex=None InputSlot=Upper PageSize=A4 job-uuid=urn:uuid:f6fd7095-afa2-3a84-4db2-7a65f497728a job-originating-host-name=localhost time-at-creation=1393089284 time-at-processing=1393089284'
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Using image rendering resolution 600 dpi
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Running command line for gs: gs -q -dNOPAUSE -dBATCH -dSAFER -sDEVICE=ps2write -sOUTPUTFILE=%stdout -dLanguageLevel=3 -r600 -dCompressFonts=false -dNoT3CCITT -dNOINTERPOLATE -c 'save pop' -f /var/spool/cups/tmp/002c0530d3451
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Started filter gs (PID 707)
    D [22/Feb/2014:18:14:44 +0100] [Job 300] Started filter pstops (PID 708)
    D [22/Feb/2014:18:14:45 +0100] [Job 300] Page = 595x842; 13,13 to 582,829
    D [22/Feb/2014:18:14:45 +0100] [Job 300] slow_collate=0, slow_duplex=0, slow_order=0
    D [22/Feb/2014:18:14:45 +0100] [Job 300] Before copy_comments - %!PS-Adobe-3.0
    D [22/Feb/2014:18:14:45 +0100] [Job 300] %!PS-Adobe-3.0
    D [22/Feb/2014:18:14:45 +0100] [Job 300] %%BoundingBox: 0 0 595 842
    D [22/Feb/2014:18:14:45 +0100] [Job 300] %%HiResBoundingBox: 0 0 595.00 842.00
    D [22/Feb/2014:18:14:45 +0100] [Job 300] %%Creator: GPL Ghostscript 910 (ps2write)
    D [22/Feb/2014:18:14:45 +0100] [Job 300] %%LanguageLevel: 2
    D [22/Feb/2014:18:14:45 +0100] [Job 300] %%CreationDate: D:20140222181445+01'00'
    D [22/Feb/2014:18:14:45 +0100] [Job 300] %%Pages: 1
    D [22/Feb/2014:18:14:45 +0100] [Job 300] %%EndComments
    D [22/Feb/2014:18:14:45 +0100] [Job 300] Before copy_prolog - %%BeginProlog
    D [22/Feb/2014:18:14:49 +0100] [Job 300] libusb_get_device_list=12
    I [22/Feb/2014:18:14:49 +0100] [Job 300] Waiting for printer to become available.
    D [22/Feb/2014:18:14:54 +0100] [Job 300] libusb_get_device_list=12
    I [22/Feb/2014:18:14:54 +0100] [Job 300] Waiting for printer to become available.
    D [22/Feb/2014:18:14:59 +0100] [Job 300] libusb_get_device_list=12
    I [22/Feb/2014:18:14:59 +0100] [Job 300] Waiting for printer to become available.
    D [22/Feb/2014:18:15:04 +0100] [Job 300] libusb_get_device_list=12
    I [22/Feb/2014:18:15:04 +0100] [Job 300] Waiting for printer to become available.
    D [22/Feb/2014:18:15:09 +0100] [Job 300] libusb_get_device_list=13
    D [22/Feb/2014:18:15:09 +0100] [Job 300] STATE: +connecting-to-device
    D [22/Feb/2014:18:15:09 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:15:09 +0100] cupsdSetBusyState: newbusy="Dirty files", busy="Printing jobs and dirty files"
    D [22/Feb/2014:18:15:09 +0100] Discarding unused printer-state-changed event...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] STATE: -connecting-to-device
    D [22/Feb/2014:18:15:09 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:15:09 +0100] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Dirty files"
    D [22/Feb/2014:18:15:09 +0100] Discarding unused printer-state-changed event...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Device protocol: 2
    I [22/Feb/2014:18:15:09 +0100] [Job 300] Sending data to printer.
    D [22/Feb/2014:18:15:09 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:15:09 +0100] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Set job-printer-state-message to "Sending data to printer.", current level=INFO
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:09 +0100] Discarding unused job-progress event...
    D [22/Feb/2014:18:15:09 +0100] Discarding unused printer-state-changed event...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] PID 707 (gs) exited with no errors.
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Before copy_setup - %%Page: 1 1
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Before page loop - %%Page: 1 1
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Copying page 1...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] PAGE: 1 1
    D [22/Feb/2014:18:15:10 +0100] Discarding unused job-progress event...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] pagew = 569.0, pagel = 816.0
    D [22/Feb/2014:18:15:10 +0100] [Job 300] bboxx = 0, bboxy = 0, bboxw = 595, bboxl = 842
    D [22/Feb/2014:18:15:10 +0100] [Job 300] PageLeft = 13.0, PageRight = 582.0
    D [22/Feb/2014:18:15:10 +0100] [Job 300] PageTop = 829.0, PageBottom = 13.0
    D [22/Feb/2014:18:15:10 +0100] [Job 300] PageWidth = 595.0, PageLength = 842.0
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 1 pages...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] PID 708 (pstops) exited with no errors.
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] PID 704 (/usr/lib/cups/filter/pdftops) exited with no errors.
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:10 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Read 8192 bytes of print data...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Wrote 8192 bytes of print data...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Read 3272 bytes of print data...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Wrote 3272 bytes of print data...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Sent 216264 bytes...
    D [22/Feb/2014:18:15:11 +0100] [Job 300] Waiting for read thread to exit...
    I [22/Feb/2014:18:15:15 +0100] Saving job.cache...
    D [22/Feb/2014:18:15:15 +0100] cupsdSetBusyState: newbusy="Printing jobs", busy="Printing jobs and dirty files"
    D [22/Feb/2014:18:15:18 +0100] [Job 300] Read thread still active, aborting the pending read...
    D [22/Feb/2014:18:15:19 +0100] [Job 300] PID 705 (/usr/lib/cups/backend/usb) exited with no errors.
    D [22/Feb/2014:18:15:19 +0100] [Job 300] time-at-completed=1393089319
    D [22/Feb/2014:18:15:19 +0100] Discarding unused job-completed event...
    I [22/Feb/2014:18:15:19 +0100] [Job 300] Job completed.
    D [22/Feb/2014:18:15:19 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:15:19 +0100] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs"
    D [22/Feb/2014:18:15:19 +0100] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [22/Feb/2014:18:15:19 +0100] Discarding unused printer-state-changed event...
    D [22/Feb/2014:18:15:19 +0100] cupsdMarkDirty(---J-)
    D [22/Feb/2014:18:15:19 +0100] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [22/Feb/2014:18:15:20 +0100] [Job 300] Unloading...
    I [22/Feb/2014:18:15:50 +0100] Saving job.cache...
    D [22/Feb/2014:18:15:50 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Printing jobs and dirty files"
    D [22/Feb/2014:18:15:50 +0100] Report: clients=1
    D [22/Feb/2014:18:15:50 +0100] Report: jobs=300
    D [22/Feb/2014:18:15:50 +0100] Report: jobs-active=0
    D [22/Feb/2014:18:15:50 +0100] Report: printers=1
    D [22/Feb/2014:18:15:50 +0100] Report: stringpool-string-count=1580
    D [22/Feb/2014:18:15:50 +0100] Report: stringpool-alloc-bytes=8880
    D [22/Feb/2014:18:15:50 +0100] Report: stringpool-total-bytes=27368
    D [22/Feb/2014:18:16:31 +0100] [Client 13] HTTP_STATE_WAITING Closing on EOF
    D [22/Feb/2014:18:16:31 +0100] [Client 13] Closing connection.
    D [22/Feb/2014:18:16:31 +0100] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [22/Feb/2014:18:16:32 +0100] [Client 13] Accepted from localhost:631 (IPv6)
    D [22/Feb/2014:18:16:32 +0100] [Client 13] Waiting for request.
    D [22/Feb/2014:18:16:32 +0100] [Client 13] GET /printers/ HTTP/1.1
    D [22/Feb/2014:18:16:32 +0100] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [22/Feb/2014:18:16:32 +0100] [Client 13] No authentication data provided.
    D [22/Feb/2014:18:16:32 +0100] [CGI] argv[0] = "/usr/lib/cups/cgi-bin/printers.cgi"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[0] = "CUPS_CACHEDIR=/var/cache/cups"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[1] = "CUPS_DATADIR=/usr/share/cups"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[2] = "CUPS_DOCROOT=/usr/share/cups/doc"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[3] = "CUPS_FONTPATH=/usr/share/cups/fonts"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[4] = "CUPS_REQUESTROOT=/var/spool/cups"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[5] = "CUPS_SERVERBIN=/usr/lib/cups"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[6] = "CUPS_SERVERROOT=/etc/cups"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[7] = "CUPS_STATEDIR=/run/cups"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[8] = "HOME=/var/spool/cups/tmp"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[9] = "PATH=/usr/lib/cups/filter:/usr/bin:/usr/bin:/bin:/usr/bin"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[10] = "SERVER_ADMIN=root@bertrandrussell"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[11] = "SOFTWARE=CUPS/1.7.1"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[12] = "TMPDIR=/var/spool/cups/tmp"
    D [22/Feb/2014:18:16:32 +0100] [CGI] envp[13] = "USER=root"
    D [22/Feb/2014:

  • Threads not dieing

    would there be any reason for a thread not dieing after the run
    method completes ?
    my run metho completes, but the reads still appear in the '.activeCount()' result
    from Thread.currentThread() ... ???

    wow, so majinda was right; hmm.Amazingly, yes.
    i suppose to be completely sure i need to track them
    myself then ?Yes, I guess so. I looked at the API for 1.5 and noticed the following additional comments:
    "The result might not reflect concurrent activity, and might be affected by the presence of certain system threads.
    Due to the inherently imprecise nature of the result, it is recommended that this method only be used for informational purposes."
    What these "informational purposes" are, I have no idea ...
    any hints on what it uses to do this 'estimate' ... ?Not without looking at the code in more detail. Whatever it uses seems to generate race conditions though.

  • Waiting for a mouse click in a single thread

    Here's my problem:
    I'm working on a program I didn't initially create, and I picked it up from the rough midpoint of its evolution. It is a single thread AWT program, with a mouseListener interface already implemented.
    Here's my problem. In a game setting, we have two players. It is no problem when both are computer controlled. When player one is controlled by a human, I need to wait for a mouse event before returning, because upon returning player two moves (regardless of its player configuration).
    I can't do any kind of busy waiting because it is a single thread. I'm looking for some kind of option besides making the program multithreaded. This also makes it difficult to use some sort of boolean variable, though I don't think it's impossible.
    Thanks in advance for any help.
    Eric

    #9 - You are correct in your assumptions. I agree it's
    not the best model, but it worked for the original
    purpose, which was to have one player always
    controlled by the computer, and the option of
    selecting a second player as being either human or
    computer. Since each move is made manually - that is,
    for a move to be made, it requires user input - there
    was no harm in returning from a function, because it
    had no immediate computation. The requirements have
    just changed, and now I must allow both players to be
    selectable. This presents a problem in that I have to
    wait for the move actions to finish before
    proceeding.Understood.
    >
    My only question is, how can I access the AWT thread?You mentioned in an earlier post that you have action listeners. As triggered by user events, these are always called on the AWT thread. For example:
    import javax.swing.*;
    import javax.awt.event.*;
    JButton button = new JButton( new AbstractAction {
            public void actionPerformed(ActionEvent e) {
                synchronized (myMonitor) {
                    myMonitor.notifyAll();
        });This button can be added to some swing UI. If clicked on, then actionPerformed will be called on the AWT thread, and any threads waiting on myMonitor will be notified.
    I see what you are saying - it's almost exactly what
    my coworkers told me - but I don't have the knowledge
    to implement it, which is why I'm here. Creating a
    monitor object isn't a problem (makeMove() would need
    to be synchronized, otherwise you wouldn't be able to
    call wait()),I recommend using a separate object for the monitor, especially if you are already using synchronized, so that you know exactly how each object's lock is being used. If you're sure it is safe, then there is nothing wrong with using the object itself as the monitor, as you suggest, however.
    but I'm not sure what you mean by the
    action handling method should be called on the AWT
    thread.Just that any action listener method is always called on the AWT thread in response to user action.
    Dave

  • How to make one thread to wait for others in this situation?

    i am simulating a 2 phase locking system (shared and exclusive locks). multiple clients connects and requests for lock to a single server. at the server end, we have a class Server which implements Runnable interface. for each connection, a new Server object is created and a new thread is started. when a conflicting lock request is made by a client, the corresponding thread in the server end must wait until other threads corresponding to clients holding the lock releases it. and when all the locks in conflicting mode are released, the thread releasing the last conflicting lock must notify the waiting thread.
    but the wait() and notifyAll() methods are not working as desired. i guess this is because each thread is working on different Server objects.
    how can i implement the waiting and notifying mechanism?

    Let me recap your question: your Server is a single resource to which
    multiple Clients want access in a CREW (Concurrent Read Exclusive Write)
    fashion. You need a single object somewhere that can serve as the
    single monitor for locking. A Singleton object like this should do it:public class CREW {
       private static CREW crew= new CREW();
       public static getCREW() { return crew; }
       private boolean wite;
       private int read;
       public synchronized acquireReadLock() {
          // your read locking stuff here
       public synchronized acquireWriteLock() {
          // your write locking stuff here
    }... the important part is that there is a single object to lock on. The
    'acquire...' methods can be pooped up at will (a Command as a
    parameter mayhap?)
    kind regards,
    Jos

  • I have two hard drives on my mac 10.5.8 power pc and hear the clickking sounds of the first hard drive and think that it may be dying, can I install everything on the other hard drive also and wait for the first drvie to die before i use the other drives

    I have two hard drives on my mac 10.5.8 power pc and hear the clickking sounds of the first hard drive and think that it may be dying, can I install everything on the other hard drive also and wait for the first drive to die before i use the other drives? Or, what is the best way to handle this?

    I do not know what you are waiting for.
    I'd make a backup of your important stuff before cloning the entire disk.
    Carbon Copy Cloner will copy your startup drive to an external  firewire drive.  You can boot from the external drive to verify that you have a good clone. When you upgrade your existing startup drive, you can at any time boot from your external drive and go back to your existing system.
    http://www.bombich.com/software/ccc.html
    SuperDuper is the wildly acclaimed program that makes recovery painless, because it makes creating a fully bootable backup painless. Its incredibly clear, friendly interface is understandable, easy to use, and SuperDuper's built-in scheduler makes it trivial to back up automatically. And it runs beautifully on both Intel and Power PC Macs!

  • Media Recovery Waiting for thread 1 sequence (in transit)

    I have rebuilt our standby database using an rman duplicate since it was missing many archive logs.
    Following the duplicate, the standby is now almost in sync with the primary. Logs are shipping across but are not being applied in a timely manner. How long should it take for an archive log from the primary to be applied to the standby?
    I need to know this so that a proper script can be set up to check the primary and standby. At the moment they are never exactly in sync - always one sequence number behind the primary.
    Why is the standby is not applying in a timely manner?
    From the alert log:
    Media Recovery Waiting for thread 1 sequence 11278 (in transit)
    The log seems to be "in transit" for a long time
    PRIMARY:
    SQL> select max (sequence#) current_seq from v$log;
    CURRENT_SEQ
    11278
    SB:
    SQL> select MAX (SEQUENCE#), APPLIED FROM V$ARCHIVED_LOG where APPLIED ='YES' GROUP BY APPLIED;
    MAX(SEQUENCE#) APP
    11277 YES
    ALERT LOG:
    RFS[2]: Archived Log: '/backup/prod/log_1_11277_704816194.dbf'
    Primary database is in MAXIMUM PERFORMANCE mode
    Mon Nov 1 15:22:01 2010
    Media Recovery Log /backup/prod/log_1_11272_704816194.dbf
    Mon Nov 1 15:26:49 2010
    Media Recovery Log /backup/prod/log_1_11273_704816194.dbf
    Mon Nov 1 15:29:54 2010
    Media Recovery Log /backup/prod/log_1_11274_704816194.dbf
    Mon Nov 1 15:34:18 2010
    Media Recovery Log /backup/prod/log_1_11275_704816194.dbf
    Mon Nov 1 15:36:42 2010
    Media Recovery Log /backup/prod/log_1_11276_704816194.dbf
    Mon Nov 1 15:39:43 2010
    Media Recovery Log /backup/prod/log_1_11277_704816194.dbf
    Mon Nov 1 15:42:34 2010
    Media Recovery Waiting for thread 1 sequence 11278 (in transit)
    I should add that I understand that for the Primary and Standby to be out by one log is not cause for concern (they are applying). Its just that I wanted to script a check that would compare them both, and and the moment they are never equal - when I understand that they should be and that the logs should be applied almost immediately.
    Edited by: Dan A on Nov 1, 2010 4:36 PM

    How long should it take for an archive log from the primary to be applied to the standby?depends on network speed also.
    make sure the archives are shipped to standby location.
    PRIMARY:
    SQL> select max (sequence#) current_seq from v$log;
    CURRENT_SEQ
    11278(this is log not archivelog ) ..... :)SB:
    SQL> select MAX (SEQUENCE#), APPLIED FROM V$ARCHIVED_LOG where APPLIED ='YES' GROUP BY APPLIED;
    MAX(SEQUENCE#) APP
    11277 YES
    Hi check is MRP started or not?
    primary database you need not check current sequence, check last generated sequence..not current sequence.
    current sequence is redo log which has been not yet archived
    I think everything is perfect here.. no issues.
    Hope you understood, let me know if not clear , thanks.

  • Jstack shows a thread waiting for monitor entry but it's already acquired

    I have a heavy load website powered by tomcat-6.0.14 and jdk1.6.0_02-b05(amd64) on a 2 dual-core amd Opteron. When tomcat started, and I directed the http request(~200/s) abruptly to tomcat, it looks choked for over one minute, and if I took off the http requests, tomcat can recover in a few minutes.
    Then I use jstack during the choke time to find what's the cause, where I found a strange situation. Almost all threads are blocking on getting a log4j lock(I think it's normal,since log4j use a coarse lock), but one thread which already got the lock are also blocked. Below is the stack trace.
    "http-172.23.24.29-8011-exec-175" daemon prio=10 tid=0x00002aad37843400 nid=0x542d waiting for monitor entry [0x0000000052e55000..0x0000000052e55da0]
    java.lang.Thread.State: BLOCKED (on object monitor)
    at org.apache.log4j.Category.callAppenders(Category.java:201)
    - locked <0x00002aaab39d5670> (a org.apache.log4j.spi.RootLogger)
    at org.apache.log4j.Category.forcedLog(Category.java:388)
    at org.apache.log4j.Category.log(Category.java:853)
    at org.apache.commons.logging.impl.Log4JLogger.info(Log4JLogger.java:133)
    at com.xxx.xxxx.TimingLogFilter.doFilter(TimingLogFilter.java:39)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:887)
    at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:696)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2009)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)
    And all the other threads waiting for the log4j lock.
    "http-172.23.24.29-8011-exec-176" daemon prio=10 tid=0x00002aad37773800 nid=0x542e waiting for monitor entry [0x0000000052f56000..0x0000000052f56b20]
    java.lang.Thread.State: BLOCKED (on object monitor)
    at org.apache.log4j.Category.callAppenders(Category.java:201)
    - waiting to lock <0x00002aaab39d5670> (a org.apache.log4j.spi.RootLogger)
    at org.apache.log4j.Category.forcedLog(Category.java:388)
    at org.apache.log4j.Category.log(Category.java:853)
    at org.apache.commons.logging.impl.Log4JLogger.info(Log4JLogger.java:133)
    at com.xxx.xxxxx.TimingLogFilter.doFilter(TimingLogFilter.java:39)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:887)
    at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:696)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2009)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)
    I'm really wondering why jstack shows the first thread is BLOCKED but no blocker.
    And also, it's not a deadlock, since I made jstack log after sever seconds, and found this time another thread has the same problem.
    "http-172.23.24.29-8011-exec-170" daemon prio=10 tid=0x00002aad3784d800 nid=0x5428 waiting for monitor entry [0x0000000052950000..0x0000000052950c20]
    java.lang.Thread.State: BLOCKED (on object monitor)
    at org.apache.log4j.Category.callAppenders(Category.java:201)
    - locked <0x00002aaab39d5670> (a org.apache.log4j.spi.RootLogger)
    at org.apache.log4j.Category.forcedLog(Category.java:388)
    at org.apache.log4j.Category.log(Category.java:853)
    at org.apache.commons.logging.impl.Log4JLogger.info(Log4JLogger.java:133)
    at com.xxx.xxxx.TimingLogFilter.doFilter(TimingLogFilter.java:35)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:887)
    at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:696)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2009)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)
    What's the cause? Is jstack accurate? Or, the problem is caused by hotspot compling since tomcat is just started? Or it's just because log4j's coarse lock? ( but after the starup, tomcat can handle the same traffic without any problem, and jstack shows no log4j block at all.)
    Thanks in advance.
    Jimcgnu

    "http-172.23.24.29-8011-exec-175" daemon prio=10 tid=0x00002aad37843400 nid=0x542d waiting for monitor entry [0x0000000052e55000..0x0000000052e55da0]
    java.lang.Thread.State: BLOCKED (on object monitor)
    at org.apache.log4j.Category.callAppenders(Category.java:201)
    - locked <0x00002aaab39d5670> (a org.apache.log4j.spi.RootLogger)
    It seems like a Dead Lock.
    The thread must have entered into a synchronized block/method1() and acquired a lock.
    - locked <0x00002aaab39d5670> (a org.apache.log4j.spi.RootLogger)
    While having lock the thread might be trying to acquire a lock to another synchronized block/method2()
    waiting for monitor entry
    java.lang.Thread.State: BLOCKED (on object monitor)
    and someother thread might have already acquired a lock to that block/method2().
    Can we check for Dead Lock??

Maybe you are looking for