You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Stu Hood (JIRA)" <ji...@apache.org> on 2011/01/27 05:30:43 UTC

[jira] Created: (CASSANDRA-2061) Missing logging for some exceptions

Missing logging for some exceptions
-----------------------------------

                 Key: CASSANDRA-2061
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
             Project: Cassandra
          Issue Type: Bug
          Components: Core
            Reporter: Stu Hood
             Fix For: 0.7.2


{quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.

You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Remaining Estimate: 8h
     Original Estimate: 8h

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>             Fix For: 0.7.3
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Stu Hood (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12988646#comment-12988646 ] 

Stu Hood commented on CASSANDRA-2061:
-------------------------------------

Based on anecdotal evidence (it exposed an exception I was expecting), this looks good. But it looks like we can probably merge Debuggable(Scheduled)ThreadPool... they are appear to be essentially identical now.

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13085985#comment-13085985 ] 

Hudson commented on CASSANDRA-2061:
-----------------------------------

Integrated in Cassandra #1027 (See [https://builds.apache.org/job/Cassandra/1027/])
    Fix missing logging for some exceptions
patch by Jonathan Ellis; reviewed by Pavel Yaskevich for CASSANDRA-2061

xedin : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1158439
Files : 
* /cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
* /cassandra/trunk/src/java/org/apache/cassandra/concurrent/RetryingScheduledThreadPoolExecutor.java
* /cassandra/trunk/src/java/org/apache/cassandra/concurrent/DebuggableScheduledThreadPoolExecutor.java
* /cassandra/trunk/CHANGES.txt
* /cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java
* /cassandra/trunk/test/unit/org/apache/cassandra/locator/DynamicEndpointSnitchTest.java
* /cassandra/trunk/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java


> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.0
>
>         Attachments: 2061-0.7.txt, 2061-v3.txt, 2061.txt
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Comment: was deleted

(was: bq. 2061-0.7.txt doesn't apply to the 0.7 branch

wfm against raw svn.  is the git mirror behind again?)

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Brandon Williams (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brandon Williams updated CASSANDRA-2061:
----------------------------------------

    Fix Version/s:     (was: 0.7.1)
                   0.7.2

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12990278#comment-12990278 ] 

Hudson commented on CASSANDRA-2061:
-----------------------------------

Integrated in Cassandra-0.7 #243 (See [https://hudson.apache.org/hudson/job/Cassandra-0.7/243/])
    

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>             Fix For: 0.7.1
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Priority: Minor  (was: Major)

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 0.7.4
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment: 2061-v3.txt

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.0
>
>         Attachments: 2061-0.7.txt, 2061-v3.txt, 2061.txt
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12988648#comment-12988648 ] 

Jonathan Ellis commented on CASSANDRA-2061:
-------------------------------------------

STPE also notes,

bq. While this class inherits from ThreadPoolExecutor, a few of the inherited tuning methods are not useful for it. In particular, because it acts as a fixed-sized pool using corePoolSize threads and an unbounded queue, adjustments to maximumPoolSize have no useful effect.

We've wanted bounded queues in the past, and we definitely still use growable pools in places, so that's another reason to keep both.

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment: 2061.txt

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12988647#comment-12988647 ] 

Jonathan Ellis commented on CASSANDRA-2061:
-------------------------------------------

>From the STPE javadoc, it sounds like STPE is more heavyweight than TPE and you don't want to use the former when all you need API-wise is the latter.  I have not done the code diving to confirm this though.

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment: 2061-0.7.txt

patch for 0.7

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] [Assigned] (CASSANDRA-2061) Missing logging for some exceptions

Posted by "paul cannon (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

paul cannon reassigned CASSANDRA-2061:
--------------------------------------

    Assignee: Jonathan Ellis  (was: paul cannon)

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 0.7.7
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment:     (was: 2061.txt)

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment:     (was: 2061.txt)

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] [Commented] (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13084958#comment-13084958 ] 

Jonathan Ellis commented on CASSANDRA-2061:
-------------------------------------------

Figured out the problem.  Here's the new version of logExceptionsAfterExecute that fixes it:

{code}
     public static void logExceptionsAfterExecute(Runnable r, Throwable t)
     {
-        // exceptions wrapped by FutureTask
-        if (r instanceof FutureTask<?>)
+        // Check for exceptions wrapped by FutureTask.  We do this by calling get(), which will
+        // cause it to throw any saved exception.
+        //
+        // Complicating things, calling get() on a ScheduledFutureTask will block until the task
+        // is cancelled.  Hence, the extra isDone check beforehand.
+        if ((r instanceof Future<?>) && ((Future<?>) r).isDone())
         {
             try
             {
-                ((FutureTask<?>) r).get();
+                ((Future<?>) r).get();
             }
{code}

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.0
>
>         Attachments: 2061-0.7.txt, 2061-v3.txt, 2061.txt
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Brandon Williams (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brandon Williams updated CASSANDRA-2061:
----------------------------------------

    Fix Version/s:     (was: 0.7.2)
                   0.7.3

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>             Fix For: 0.7.3
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment:     (was: 2061.txt)

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Stu Hood (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12987750#action_12987750 ] 

Stu Hood commented on CASSANDRA-2061:
-------------------------------------

* 2061.txt doesn't completely remove RetryingSTPE.java, and doesn't replace the usage in CFStore
* 2061-0.7.txt doesn't apply to the 0.7 branch

Also, will we need a separate patch for trunk?

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12988107#action_12988107 ] 

Jonathan Ellis commented on CASSANDRA-2061:
-------------------------------------------

bq. 2061-0.7.txt doesn't apply to the 0.7 branch

wfm against raw svn.  is the git mirror behind again?

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment: 2061.txt

new patch also updates afterExecute in both classes to log error if default uncaught exception handler is null

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Reopened: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis reopened CASSANDRA-2061:
---------------------------------------


reverted because of DynamicEndpointSnitchTest failure.  Not sure what is going on there -- I suspect some scheduled task is taking too long and keeping the DES update from happening, but why that should be affected by this patch is obscure to me.

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Jonathan Ellis
>             Fix For: 0.7.1
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Assigned] (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis reassigned CASSANDRA-2061:
-----------------------------------------

    Assignee: paul cannon  (was: Jonathan Ellis)

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: paul cannon
>            Priority: Minor
>             Fix For: 0.7.5
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment: 2061-0.7.txt

bq. 2061-0.7.txt doesn't apply to the 0.7 branch

fixed.  also applies to trunk.

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment:     (was: 2061-0.7.txt)

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment: 2061.txt

bq. 2061.txt doesn't completely remove RetryingSTPE.java

that's just how svn diff works.

bq. and doesn't replace the usage in CFStore

fixed.


> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061-0.7.txt, 2061.txt, 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-2061) Missing logging for some exceptions

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2061:
--------------------------------------

    Attachment: 2061.txt

As near as I can tell, an exception thrown on a scheduled task will never kill the executor, just like in TPE.  I don't remember why the author [me] wrote that code -- probably because it was replacing Timer and TimerTask, and an uncaught exception in a TimerTask _will_ kill the timer.

Patch removes RetryingSTPE and replaces with DebuggableSTPE that has an afterExecute copied from DTPE.

> Missing logging for some exceptions
> -----------------------------------
>
>                 Key: CASSANDRA-2061
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2061
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stu Hood
>             Fix For: 0.7.2
>
>         Attachments: 2061.txt
>
>
> {quote}Since you are using ScheduledThreadPoolExecutor.schedule(), the exception was swallowed by the FutureTask.
> You will have to perform a get() method on the ScheduledFuture, and you will get ExecutionException if there was any exception occured in run().{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.