Class TableMaintenanceUtilTest
java.lang.Object
ubic.gemma.core.util.test.BaseTest5
ubic.gemma.persistence.service.maintenance.TableMaintenanceUtilTest
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidsetUp()voidtearDown()voidtest()voidH2 — what the unit tests run on, MODE=MYSQL and all — rejectsFORCE INDEXwith a syntax error, and the constraint name it does carry is not an index name anyway.voidThe deprecated factor-annotations branch joinsCHARACTERISTICon a column that is NULL on all 10.8M production rows, so its index reports cardinality 1 and MySQL costs the ref lookup at the whole table — it full-scans instead, which measured 12.1 s per experiment regardless of size.void
-
Constructor Details
-
TableMaintenanceUtilTest
public TableMaintenanceUtilTest()
-
-
Method Details
-
setUp
- Throws:
IOException
-
tearDown
- Throws:
IOException
-
test
@Test public void test() -
testUpdateWhenTableIsFresh
- Throws:
IOException
-
testEe2cDesignLevelPinsTheFactorAnnotationsIndexOnMysql
@Test public void testEe2cDesignLevelPinsTheFactorAnnotationsIndexOnMysql()The deprecated factor-annotations branch joinsCHARACTERISTICon a column that is NULL on all 10.8M production rows, so its index reports cardinality 1 and MySQL costs the ref lookup at the whole table — it full-scans instead, which measured 12.1 s per experiment regardless of size. The hint is what makes a per-experiment refresh cheap enough to run inside a curation commit. -
testEe2cDesignLevelOmitsTheIndexHintOnH2
@Test public void testEe2cDesignLevelOmitsTheIndexHintOnH2()H2 — what the unit tests run on, MODE=MYSQL and all — rejectsFORCE INDEXwith a syntax error, and the constraint name it does carry is not an index name anyway. Emitting the hint unconditionally turns every H2 test that rebuilds EE2C red.
-