public void testBug42750() throws Exception { Properties props = new Properties(); Connection conn = TestUtil.getConnection(props); char fileSeparator = System.getProperty("file.separator").charAt(0); Misc.getGemFireCache(); conn.createStatement(); String path = "." + fileSeparator + "test_dir"; File file = new File(path); if (!file.mkdirs() && !file.isDirectory()) { throw new DiskAccessException( "Could not create directory for " + " default disk store : " + file.getAbsolutePath(), (Region) null); } try { Connection conn1; conn1 = TestUtil.getConnection(); Statement stmt1 = conn1.createStatement(); stmt1.execute("Create DiskStore " + "TestPersistenceDiskStore" + "'" + path + "'"); conn1.close(); TestUtil.shutDown(); conn1 = TestUtil.getConnection(); stmt1 = conn1.createStatement(); stmt1.execute("Create DiskStore " + "TestPersistenceDiskStore" + "'" + path + "'"); fail("Disk store creation should fail as the disk store already exists"); } catch (SQLException e) { assertEquals(e.getSQLState(), "X0Y68"); } }
public void testDiskStoreConfig2() throws SQLException { Connection conn = getConnection(); Statement s = conn.createStatement(); File f1 = new File("dir1"); f1.mkdir(); File f2 = new File("dir2"); f2.mkdir(); s.execute("create DiskStore testDiskStore3 ('dir1', 'dir2') WriteBufferSize 7878"); DiskStore ds = Misc.getGemFireCache().findDiskStore("TESTDISKSTORE3"); assertEquals(ds.getAllowForceCompaction(), DiskStoreFactory.DEFAULT_ALLOW_FORCE_COMPACTION); assertEquals(ds.getAutoCompact(), DiskStoreFactory.DEFAULT_AUTO_COMPACT); assertEquals(ds.getCompactionThreshold(), DiskStoreFactory.DEFAULT_COMPACTION_THRESHOLD); assertEquals(ds.getMaxOplogSize(), DiskStoreFactory.DEFAULT_MAX_OPLOG_SIZE); assertEquals(ds.getQueueSize(), DiskStoreFactory.DEFAULT_QUEUE_SIZE); assertEquals(ds.getTimeInterval(), DiskStoreFactory.DEFAULT_TIME_INTERVAL); assertEquals(ds.getWriteBufferSize(), 7878); assertEquals(ds.getDiskDirs().length, 2); Set<String> files = new HashSet<String>(); files.add(new File(".", "dir1").getAbsolutePath()); files.add(new File(".", "dir2").getAbsolutePath()); assertEquals(ds.getDiskDirs().length, 2); for (File file : ds.getDiskDirs()) { assertTrue(files.remove(file.getAbsolutePath())); } assertTrue(files.isEmpty()); assertNotNull(ds); s = conn.createStatement(); s.execute("drop DiskStore testDiskStore3"); // cleanUpDirs(new File[] { f1, f2 }); }
private void dataPersistenceOfPR(String partitionClause) throws Exception { Properties props = new Properties(); Connection conn = TestUtil.getConnection(props); char fileSeparator = System.getProperty("file.separator").charAt(0); GemFireCacheImpl cache = Misc.getGemFireCache(); Statement stmt = conn.createStatement(); if (cache.findDiskStore("TestPersistenceDiskStore") == null) { String path = "." + fileSeparator + "test_dir"; File file = new File(path); if (!file.mkdirs() && !file.isDirectory()) { throw new DiskAccessException( "Could not create directory for " + " default disk store : " + file.getAbsolutePath(), (Region) null); } try { Connection conn1; conn1 = TestUtil.getConnection(); Statement stmt1 = conn1.createStatement(); stmt1.execute("Create DiskStore " + "TestPersistenceDiskStore" + "'" + path + "'"); conn1.close(); } catch (SQLException e) { throw GemFireXDRuntimeException.newRuntimeException(null, e); } } stmt.execute("create schema trade"); stmt.execute( "create table trade.customers (cid int not null, cust_name varchar(100), tid int, " + "primary key (cid)) " + partitionClause + " PERSISTENT " + "'" + "TestPersistenceDiskStore" + "'"); PreparedStatement ps = conn.prepareStatement("insert into trade.customers values (?,?,?)"); for (int i = 1; i < 31; ++i) { ps.setInt(1, i); ps.setString(2, "name" + i); ps.setInt(3, i); ps.executeUpdate(); } conn.close(); shutDown(); conn = TestUtil.getConnection(); stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("select * from trade.customers"); int expected = 465; int actual = 0; while (rs.next()) { int val = rs.getInt(1); actual += val; } assertEquals(expected, actual); }
public void testDiskStoreConfig1() throws Exception { Connection conn = getConnection(); Statement s = conn.createStatement(); File f1 = new File("dir1"); f1.mkdir(); File f2 = new File("dir2"); f2.mkdir(); File f3 = new File("dir3"); f3.mkdir(); s.execute( "create DiskStore testDiskStore2 maxlogsize 448 autocompact false " + " allowforcecompaction true compactionthreshold 80 TimeInterval 23344 " + "Writebuffersize 192923 queuesize 1734 ('dir1' 456, 'dir2', 'dir3' 55556 )"); DiskStore ds = Misc.getGemFireCache().findDiskStore("TESTDISKSTORE2"); assertNotNull(ds); assertEquals(ds.getAllowForceCompaction(), true); assertEquals(ds.getAutoCompact(), false); assertEquals(ds.getCompactionThreshold(), 80); assertEquals(448, ds.getMaxOplogSize()); assertEquals(ds.getQueueSize(), 1734); assertEquals(ds.getTimeInterval(), 23344); assertEquals(ds.getWriteBufferSize(), 192923); assertEquals(ds.getDiskDirs().length, 3); Set<String> files = new HashSet<String>(); files.add(new File(".", "dir1").getAbsolutePath()); files.add(new File(".", "dir2").getAbsolutePath()); files.add(new File(".", "dir3").getAbsolutePath()); assertEquals(ds.getDiskDirs().length, 3); for (File file : ds.getDiskDirs()) { assertTrue(files.remove(file.getAbsolutePath())); } assertTrue(files.isEmpty()); List<Long> sizes = new ArrayList<Long>(); int i = 0; sizes.add(456l); sizes.add(0l); sizes.add(55556l); for (long size : ds.getDiskDirSizes()) { assertEquals(size, sizes.get(i++).longValue()); } // cleanUpDirs(new File[] { f1, f2, f3 }); s.execute("drop DiskStore testDiskStore2"); }
public void testDiskStoreWithDefaultConfig() throws SQLException { Connection conn = getConnection(); Statement s = conn.createStatement(); s.execute("create DiskStore testDiskStore1"); DiskStore ds = Misc.getGemFireCache().findDiskStore("TESTDISKSTORE1"); assertEquals(ds.getAllowForceCompaction(), DiskStoreFactory.DEFAULT_ALLOW_FORCE_COMPACTION); assertEquals(ds.getAutoCompact(), DiskStoreFactory.DEFAULT_AUTO_COMPACT); assertEquals(ds.getCompactionThreshold(), DiskStoreFactory.DEFAULT_COMPACTION_THRESHOLD); assertEquals(ds.getMaxOplogSize(), DiskStoreFactory.DEFAULT_MAX_OPLOG_SIZE); assertEquals(ds.getQueueSize(), DiskStoreFactory.DEFAULT_QUEUE_SIZE); assertEquals(ds.getTimeInterval(), DiskStoreFactory.DEFAULT_TIME_INTERVAL); assertEquals(ds.getWriteBufferSize(), DiskStoreFactory.DEFAULT_WRITE_BUFFER_SIZE); assertEquals(ds.getDiskDirs().length, 1); assertEquals(ds.getDiskDirs()[0].getAbsolutePath(), new File(".").getAbsolutePath()); assertNotNull(ds); s = conn.createStatement(); s.execute("drop DiskStore testDiskStore1"); }