You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2009/05/12 17:27:45 UTC
[jira] Created: (CASSANDRA-163) fix RackUnawareStrategyTest
fix RackUnawareStrategyTest
---------------------------
Key: CASSANDRA-163
URL: https://issues.apache.org/jira/browse/CASSANDRA-163
Project: Cassandra
Issue Type: Bug
Reporter: Jonathan Ellis
Assignee: Jonathan Ellis
it's been failing for forever but it was in the wrong directory so testng didn't run it. I've moved it to the right directory for the junit migration but commented out.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (CASSANDRA-163) fix RackUnawareStrategyTest
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-163?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Ellis updated CASSANDRA-163:
-------------------------------------
Comment: was deleted
(was: here is the problem
void put(String key, ColumnFamily columnFamily, CommitLog.CommitLogContext cLogCtx) throws IOException
{
isDirty_ = true;
executor_.submit(new Putter(key, columnFamily));
if (isThresholdViolated())
{
enqueueFlush(cLogCtx);
}
}
(enqueueFlush is the one that swaps out this memtable for a new one in CFS and calls shutdown)
the problem is that we submit first and ask questions later, so we can clearly submit to this [old] memtable on one thread after another thread starts the shutdown.
the only option I see is going to back to the old double-checked-ish logic of checking threshold first, then recursing to resubmit if we switch memtables. (overriding TPE.execute/addIfUnderMaximumPoolSize is not an option since liberal use of private variables is made.))
> fix RackUnawareStrategyTest
> ---------------------------
>
> Key: CASSANDRA-163
> URL: https://issues.apache.org/jira/browse/CASSANDRA-163
> Project: Cassandra
> Issue Type: Bug
> Reporter: Jonathan Ellis
> Assignee: Jonathan Ellis
>
> it's been failing for forever but it was in the wrong directory so testng didn't run it. I've moved it to the right directory for the junit migration but commented out.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (CASSANDRA-163) fix RackUnawareStrategyTest
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-163?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Ellis resolved CASSANDRA-163.
--------------------------------------
Resolution: Fixed
fixed.
> fix RackUnawareStrategyTest
> ---------------------------
>
> Key: CASSANDRA-163
> URL: https://issues.apache.org/jira/browse/CASSANDRA-163
> Project: Cassandra
> Issue Type: Bug
> Reporter: Jonathan Ellis
> Assignee: Jonathan Ellis
>
> it's been failing for forever but it was in the wrong directory so testng didn't run it. I've moved it to the right directory for the junit migration but commented out.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (CASSANDRA-163) fix RackUnawareStrategyTest
Posted by "Hudson (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708848#action_12708848 ]
Hudson commented on CASSANDRA-163:
----------------------------------
Integrated in Cassandra #73 (See [http://hudson.zones.apache.org/hudson/job/Cassandra/73/])
fix RackUnawareStrategyTest -- endpoint asserts 'host' is an ip address (to make sure we're not mixing hostnames in again) so create a suitable fake IP for the test. patch by jbellis for
> fix RackUnawareStrategyTest
> ---------------------------
>
> Key: CASSANDRA-163
> URL: https://issues.apache.org/jira/browse/CASSANDRA-163
> Project: Cassandra
> Issue Type: Bug
> Reporter: Jonathan Ellis
> Assignee: Jonathan Ellis
>
> it's been failing for forever but it was in the wrong directory so testng didn't run it. I've moved it to the right directory for the junit migration but commented out.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (CASSANDRA-163) fix RackUnawareStrategyTest
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708603#action_12708603 ]
Jonathan Ellis commented on CASSANDRA-163:
------------------------------------------
here is the problem
void put(String key, ColumnFamily columnFamily, CommitLog.CommitLogContext cLogCtx) throws IOException
{
isDirty_ = true;
executor_.submit(new Putter(key, columnFamily));
if (isThresholdViolated())
{
enqueueFlush(cLogCtx);
}
}
(enqueueFlush is the one that swaps out this memtable for a new one in CFS and calls shutdown)
the problem is that we submit first and ask questions later, so we can clearly submit to this [old] memtable on one thread after another thread starts the shutdown.
the only option I see is going to back to the old double-checked-ish logic of checking threshold first, then recursing to resubmit if we switch memtables. (overriding TPE.execute/addIfUnderMaximumPoolSize is not an option since liberal use of private variables is made.)
> fix RackUnawareStrategyTest
> ---------------------------
>
> Key: CASSANDRA-163
> URL: https://issues.apache.org/jira/browse/CASSANDRA-163
> Project: Cassandra
> Issue Type: Bug
> Reporter: Jonathan Ellis
> Assignee: Jonathan Ellis
>
> it's been failing for forever but it was in the wrong directory so testng didn't run it. I've moved it to the right directory for the junit migration but commented out.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.