You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2015/10/02 18:16:26 UTC

[jira] [Commented] (PHOENIX-2256) Test failure in PMetaDataImplTest

    [ https://issues.apache.org/jira/browse/PHOENIX-2256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14941324#comment-14941324 ] 

ASF GitHub Bot commented on PHOENIX-2256:
-----------------------------------------

Github user JamesRTaylor commented on a diff in the pull request:

    https://github.com/apache/phoenix/pull/118#discussion_r41038758
  
    --- Diff: phoenix-core/src/main/java/org/apache/phoenix/schema/PMetaDataImpl.java ---
    @@ -160,7 +160,7 @@ public PMetaDataCache cloneMinusOverage(long overage) {
                         newCache.put(tableRef.table.getKey(), new PTableRef(tableRef));
                         toRemove.add(tableRef);
                         toRemoveBytes += tableRef.estSize;
    -                    if (toRemoveBytes - toRemove.peekLast().estSize > overage) {
    +                    while (toRemoveBytes - toRemove.peekLast().estSize >= overage) {
    --- End diff --
    
    One minor nit - we should guard against toRemove being empty.


> Test failure in PMetaDataImplTest
> ---------------------------------
>
>                 Key: PHOENIX-2256
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2256
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.6.0
>         Environment: Happens on both Ubuntu and Fedora, running 64-bit Java 8.
>            Reporter: James Heather
>
> f I make a fresh clone of the repo, and then run mvn package, I get a test failure:
> {code}
>     -------------------------------------------------------------------------------
>     Test set: org.apache.phoenix.schema.PMetaDataImplTest
>     -------------------------------------------------------------------------------
>     Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.027 sec <<< FAILURE! - in org.apache.phoenix.schema.PMetaDataImplTest
>     testEviction(org.apache.phoenix.schema.PMetaDataImplTest)  Time elapsed: 0.027 sec  <<< FAILURE!
>     java.lang.AssertionError: expected:<3> but was:<2>
>         at org.junit.Assert.fail(Assert.java:88)
>         at org.junit.Assert.failNotEquals(Assert.java:834)
>         at org.junit.Assert.assertEquals(Assert.java:645)
>         at org.junit.Assert.assertEquals(Assert.java:631)
>         at org.apache.phoenix.schema.PMetaDataImplTest.testEviction(PMetaDataImplTest.java:98)
> {code}
> This appears to be a bug in {{PMetaDataImpl.java}}. The test looks right.
> Table {{b}} should get evicted first, which creates enough space for {{d}}. But in fact {{c}} gets evicted first, and then {{b}} needs to be evicted as well to make enough room.
> I don't know if there's a race condition in here somewhere. It's odd that no one has picked up on a failing test before, so I'm wondering whether it succeeds in some environments. But it fails for me on both Ubuntu and Fedora (both with 64-bit Java 8).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)