Search in sources :

Example 1 with InformixDatabasePlatform

use of org.jumpmind.db.platform.informix.InformixDatabasePlatform in project symmetric-ds by JumpMind.

the class DatabaseWriterTest method testBenchmark.

@Test
public void testBenchmark() throws Exception {
    Table table = buildSourceTable(TEST_TABLE, TEST_KEYS, TEST_COLUMNS);
    int startId = Integer.parseInt(getId()) + 1;
    List<CsvData> datas = new ArrayList<CsvData>();
    for (int i = 0; i < 1600; i++) {
        String[] values = { getNextId(), UUID.randomUUID().toString(), UUID.randomUUID().toString(), UUID.randomUUID().toString(), UUID.randomUUID().toString(), "2007-01-02 03:20:10.0", "2007-02-03 04:05:06.0", "0", "47", "67.89", "-0.0747663" };
        datas.add(new CsvData(DataEventType.INSERT, values));
    }
    for (int i = startId; i < 1600 + startId; i++) {
        String[] values = { Integer.toString(i) };
        datas.add(new CsvData(DataEventType.DELETE, values, null));
    }
    long startTime = System.currentTimeMillis();
    long statementCount = writeData(new TableCsvData(table, datas));
    double totalSeconds = (System.currentTimeMillis() - startTime) / 1000.0;
    double targetTime = 15.0;
    if (platform instanceof InformixDatabasePlatform) {
        targetTime = 20.0;
    }
    Assert.assertEquals(3200, statementCount);
    // TODO: this used to run in 1 second; can we do some optimization?
    Assert.assertTrue("DataLoader running in " + totalSeconds + " is too slow", totalSeconds <= targetTime);
}
Also used : InformixDatabasePlatform(org.jumpmind.db.platform.informix.InformixDatabasePlatform) Table(org.jumpmind.db.model.Table) ArrayList(java.util.ArrayList) CsvData(org.jumpmind.symmetric.io.data.CsvData) AbstractWriterTest(org.jumpmind.symmetric.io.AbstractWriterTest) Test(org.junit.Test)

Example 2 with InformixDatabasePlatform

use of org.jumpmind.db.platform.informix.InformixDatabasePlatform in project symmetric-ds by JumpMind.

the class JdbcSymmetricDialectFactory method create.

public ISymmetricDialect create() {
    AbstractSymmetricDialect dialect = null;
    if (platform instanceof MariaDBDatabasePlatform) {
        dialect = new MariaDBSymmetricDialect(parameterService, platform);
    } else if (platform instanceof MySqlDatabasePlatform) {
        dialect = new MySqlSymmetricDialect(parameterService, platform);
    } else if (platform instanceof OracleDatabasePlatform) {
        dialect = new OracleSymmetricDialect(parameterService, platform);
    } else if (platform instanceof MsSql2008DatabasePlatform) {
        dialect = new MsSqlSymmetricDialect(parameterService, platform);
    } else if (platform instanceof MsSql2005DatabasePlatform) {
        dialect = new MsSqlSymmetricDialect(parameterService, platform);
    } else if (platform instanceof MsSql2000DatabasePlatform) {
        dialect = new MsSql2000SymmetricDialect(parameterService, platform);
    } else if (platform instanceof GreenplumPlatform) {
        dialect = new GreenplumSymmetricDialect(parameterService, platform);
    } else if (platform instanceof RedshiftDatabasePlatform) {
        dialect = new RedshiftSymmetricDialect(parameterService, platform);
    } else if (platform instanceof PostgreSqlDatabasePlatform) {
        dialect = new PostgreSqlSymmetricDialect(parameterService, platform);
    } else if (platform instanceof DerbyDatabasePlatform) {
        dialect = new DerbySymmetricDialect(parameterService, platform);
    } else if (platform instanceof H2DatabasePlatform) {
        dialect = new H2SymmetricDialect(parameterService, platform);
    } else if (platform instanceof HsqlDbDatabasePlatform) {
        dialect = new HsqlDbSymmetricDialect(parameterService, platform);
    } else if (platform instanceof HsqlDb2DatabasePlatform) {
        dialect = new HsqlDb2SymmetricDialect(parameterService, platform);
    } else if (platform instanceof InformixDatabasePlatform) {
        dialect = new InformixSymmetricDialect(parameterService, platform);
    } else if (platform instanceof Db2zOsDatabasePlatform) {
        dialect = new Db2zOsSymmetricDialect(parameterService, platform);
    } else if (platform instanceof Db2As400DatabasePlatform) {
        dialect = new Db2As400SymmetricDialect(parameterService, platform);
    } else if (platform instanceof Db2DatabasePlatform) {
        int dbMajorVersion = platform.getSqlTemplate().getDatabaseMajorVersion();
        int dbMinorVersion = platform.getSqlTemplate().getDatabaseMinorVersion();
        if (dbMajorVersion < 9 || (dbMajorVersion == 9 && dbMinorVersion < 5)) {
            dialect = new Db2SymmetricDialect(parameterService, platform);
        } else {
            dialect = new Db2v9SymmetricDialect(parameterService, platform);
        }
    } else if (platform instanceof FirebirdDatabasePlatform) {
        int dbMajorVersion = platform.getSqlTemplate().getDatabaseMajorVersion();
        int dbMinorVersion = platform.getSqlTemplate().getDatabaseMinorVersion();
        if (dbMajorVersion == 2 && dbMinorVersion == 0) {
            dialect = new Firebird20SymmetricDialect(parameterService, platform);
        } else if (dbMajorVersion == 2) {
            dialect = new Firebird21SymmetricDialect(parameterService, platform);
        } else {
            dialect = new FirebirdSymmetricDialect(parameterService, platform);
        }
    } else if (platform instanceof AseDatabasePlatform) {
        dialect = new AseSymmetricDialect(parameterService, platform);
    } else if (platform instanceof SqlAnywhereDatabasePlatform) {
        dialect = new SqlAnywhereSymmetricDialect(parameterService, platform);
    } else if (platform instanceof InterbaseDatabasePlatform) {
        dialect = new InterbaseSymmetricDialect(parameterService, platform);
    } else if (platform instanceof SqliteDatabasePlatform) {
        dialect = new SqliteJdbcSymmetricDialect(parameterService, platform);
    } else if (platform instanceof VoltDbDatabasePlatform) {
        dialect = new VoltDbSymmetricDialect(parameterService, platform);
    } else {
        dialect = new GenericSymmetricDialect(parameterService, platform);
    }
    return dialect;
}
Also used : MySqlDatabasePlatform(org.jumpmind.db.platform.mysql.MySqlDatabasePlatform) MySqlSymmetricDialect(org.jumpmind.symmetric.db.mysql.MySqlSymmetricDialect) Db2DatabasePlatform(org.jumpmind.db.platform.db2.Db2DatabasePlatform) HsqlDb2DatabasePlatform(org.jumpmind.db.platform.hsqldb2.HsqlDb2DatabasePlatform) InformixSymmetricDialect(org.jumpmind.symmetric.db.informix.InformixSymmetricDialect) Firebird20SymmetricDialect(org.jumpmind.symmetric.db.firebird.Firebird20SymmetricDialect) InformixDatabasePlatform(org.jumpmind.db.platform.informix.InformixDatabasePlatform) Db2SymmetricDialect(org.jumpmind.symmetric.db.db2.Db2SymmetricDialect) HsqlDb2SymmetricDialect(org.jumpmind.symmetric.db.hsqldb2.HsqlDb2SymmetricDialect) AseDatabasePlatform(org.jumpmind.db.platform.ase.AseDatabasePlatform) SqliteJdbcSymmetricDialect(org.jumpmind.symmetric.db.sqlite.SqliteJdbcSymmetricDialect) AseSymmetricDialect(org.jumpmind.symmetric.db.ase.AseSymmetricDialect) InterbaseDatabasePlatform(org.jumpmind.db.platform.interbase.InterbaseDatabasePlatform) MsSqlSymmetricDialect(org.jumpmind.symmetric.db.mssql.MsSqlSymmetricDialect) InterbaseSymmetricDialect(org.jumpmind.symmetric.db.interbase.InterbaseSymmetricDialect) HsqlDbSymmetricDialect(org.jumpmind.symmetric.db.hsqldb.HsqlDbSymmetricDialect) OracleDatabasePlatform(org.jumpmind.db.platform.oracle.OracleDatabasePlatform) PostgreSqlSymmetricDialect(org.jumpmind.symmetric.db.postgresql.PostgreSqlSymmetricDialect) Db2zOsDatabasePlatform(org.jumpmind.db.platform.db2.Db2zOsDatabasePlatform) H2SymmetricDialect(org.jumpmind.symmetric.db.h2.H2SymmetricDialect) SqlAnywhereDatabasePlatform(org.jumpmind.db.platform.sqlanywhere.SqlAnywhereDatabasePlatform) RedshiftSymmetricDialect(org.jumpmind.symmetric.db.redshift.RedshiftSymmetricDialect) VoltDbSymmetricDialect(org.jumpmind.symmetric.db.voltdb.VoltDbSymmetricDialect) MsSql2008DatabasePlatform(org.jumpmind.db.platform.mssql.MsSql2008DatabasePlatform) FirebirdDatabasePlatform(org.jumpmind.db.platform.firebird.FirebirdDatabasePlatform) Firebird21SymmetricDialect(org.jumpmind.symmetric.db.firebird.Firebird21SymmetricDialect) MsSql2005DatabasePlatform(org.jumpmind.db.platform.mssql.MsSql2005DatabasePlatform) DerbySymmetricDialect(org.jumpmind.symmetric.db.derby.DerbySymmetricDialect) MariaDBSymmetricDialect(org.jumpmind.symmetric.db.mariadb.MariaDBSymmetricDialect) SqliteDatabasePlatform(org.jumpmind.db.platform.sqlite.SqliteDatabasePlatform) MsSql2000SymmetricDialect(org.jumpmind.symmetric.db.mssql2000.MsSql2000SymmetricDialect) Db2As400DatabasePlatform(org.jumpmind.db.platform.db2.Db2As400DatabasePlatform) Db2As400SymmetricDialect(org.jumpmind.symmetric.db.db2.Db2As400SymmetricDialect) RedshiftDatabasePlatform(org.jumpmind.db.platform.redshift.RedshiftDatabasePlatform) PostgreSqlDatabasePlatform(org.jumpmind.db.platform.postgresql.PostgreSqlDatabasePlatform) HsqlDb2SymmetricDialect(org.jumpmind.symmetric.db.hsqldb2.HsqlDb2SymmetricDialect) H2DatabasePlatform(org.jumpmind.db.platform.h2.H2DatabasePlatform) HsqlDbDatabasePlatform(org.jumpmind.db.platform.hsqldb.HsqlDbDatabasePlatform) HsqlDb2DatabasePlatform(org.jumpmind.db.platform.hsqldb2.HsqlDb2DatabasePlatform) GenericSymmetricDialect(org.jumpmind.symmetric.db.generic.GenericSymmetricDialect) Db2zOsSymmetricDialect(org.jumpmind.symmetric.db.db2.Db2zOsSymmetricDialect) FirebirdSymmetricDialect(org.jumpmind.symmetric.db.firebird.FirebirdSymmetricDialect) GreenplumPlatform(org.jumpmind.db.platform.greenplum.GreenplumPlatform) VoltDbDatabasePlatform(org.jumpmind.db.platform.voltdb.VoltDbDatabasePlatform) SqlAnywhereSymmetricDialect(org.jumpmind.symmetric.db.sqlanywhere.SqlAnywhereSymmetricDialect) MsSql2000DatabasePlatform(org.jumpmind.db.platform.mssql.MsSql2000DatabasePlatform) Db2v9SymmetricDialect(org.jumpmind.symmetric.db.db2.Db2v9SymmetricDialect) DerbyDatabasePlatform(org.jumpmind.db.platform.derby.DerbyDatabasePlatform) MariaDBDatabasePlatform(org.jumpmind.db.platform.mariadb.MariaDBDatabasePlatform) OracleSymmetricDialect(org.jumpmind.symmetric.db.oracle.OracleSymmetricDialect) GreenplumSymmetricDialect(org.jumpmind.symmetric.db.postgresql.GreenplumSymmetricDialect)

Aggregations

InformixDatabasePlatform (org.jumpmind.db.platform.informix.InformixDatabasePlatform)2 ArrayList (java.util.ArrayList)1 Table (org.jumpmind.db.model.Table)1 AseDatabasePlatform (org.jumpmind.db.platform.ase.AseDatabasePlatform)1 Db2As400DatabasePlatform (org.jumpmind.db.platform.db2.Db2As400DatabasePlatform)1 Db2DatabasePlatform (org.jumpmind.db.platform.db2.Db2DatabasePlatform)1 Db2zOsDatabasePlatform (org.jumpmind.db.platform.db2.Db2zOsDatabasePlatform)1 DerbyDatabasePlatform (org.jumpmind.db.platform.derby.DerbyDatabasePlatform)1 FirebirdDatabasePlatform (org.jumpmind.db.platform.firebird.FirebirdDatabasePlatform)1 GreenplumPlatform (org.jumpmind.db.platform.greenplum.GreenplumPlatform)1 H2DatabasePlatform (org.jumpmind.db.platform.h2.H2DatabasePlatform)1 HsqlDbDatabasePlatform (org.jumpmind.db.platform.hsqldb.HsqlDbDatabasePlatform)1 HsqlDb2DatabasePlatform (org.jumpmind.db.platform.hsqldb2.HsqlDb2DatabasePlatform)1 InterbaseDatabasePlatform (org.jumpmind.db.platform.interbase.InterbaseDatabasePlatform)1 MariaDBDatabasePlatform (org.jumpmind.db.platform.mariadb.MariaDBDatabasePlatform)1 MsSql2000DatabasePlatform (org.jumpmind.db.platform.mssql.MsSql2000DatabasePlatform)1 MsSql2005DatabasePlatform (org.jumpmind.db.platform.mssql.MsSql2005DatabasePlatform)1 MsSql2008DatabasePlatform (org.jumpmind.db.platform.mssql.MsSql2008DatabasePlatform)1 MySqlDatabasePlatform (org.jumpmind.db.platform.mysql.MySqlDatabasePlatform)1 OracleDatabasePlatform (org.jumpmind.db.platform.oracle.OracleDatabasePlatform)1