@Override public boolean checkState(int tries) throws IOException { try { if (getAdmin().isTableAvailable(tableName)) { return true; } } catch (TableNotFoundException tnfe) { LOG.debug("Table " + tableName.getNameWithNamespaceInclAsString() + " was not enabled, sleeping. tries=" + tries); } return false; } });
while (!admin.isTableAvailable(table1)) { Thread.sleep(100);
@Override public boolean checkState(int tries) throws IOException { try { if (getAdmin().isTableAvailable(tableName)) { return true; } } catch (TableNotFoundException tnfe) { LOG.debug("Table " + tableName.getNameWithNamespaceInclAsString() + " was not enabled, sleeping. tries=" + tries); } return false; } });
/** * Test using external property. * * @throws IOException * Signals that an I/O exception has occurred. */ @Test public void testUsingExternalProperty() throws IOException { Map<String, String> puProperties = new HashMap<String, String>(); puProperties.put("kundera.ddl.auto.prepare", "create-drop"); puProperties.put("kundera.keyspace", "KunderaHbaseKeyspace"); emf = Persistence.createEntityManagerFactory("XmlPropertyTest", puProperties); Assert.assertTrue(admin.isTableAvailable("KunderaHbaseKeyspace:HBASEUSERXYZ")); emf.close(); Assert.assertFalse(admin.isTableAvailable("KunderaHbaseKeyspace:HBASEUSERXYZ")); } }
propertyMap.put(PersistenceProperties.KUNDERA_DDL_AUTO_PREPARE, "create"); EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnit, propertyMap); Assert.assertTrue(admin.isTableAvailable(TABLE)); Assert.assertFalse(admin.isTableAvailable("HbaseEntitySimple")); Assert.assertFalse(admin.isTableAvailable("HbaseEntitySuper")); Assert.assertFalse(admin.isTableAvailable("HbaseEntityAddressUni1To1")); Assert.assertFalse(admin.isTableAvailable("HbaseEntityAddressUniMTo1")); Assert.assertFalse(admin.isTableAvailable("HbaseEntityAddressUni1ToM")); Assert.assertFalse(admin.isTableAvailable("HbaseEntityPersonUni1ToM")); Assert.assertFalse(admin.isTableAvailable("HbaseEntityPersonUni1To1")); Assert.assertFalse(admin.isTableAvailable("HbaseEntityPersonUniMto1")); Assert.assertFalse(admin.isTableAvailable("HbaseEntityAddressUni1To1PK")); Assert.assertFalse(admin.isTableAvailable("HbaseEntityPersonUni1To1PK"));
/** * Creates the or update table. * * @param tablename * the tablename * @param hTableDescriptor * the h table descriptor */ private void createOrUpdateTable(String tablename, HTableDescriptor hTableDescriptor) { try { if (admin.isTableAvailable(tablename)) { admin.modifyTable(tablename, hTableDescriptor); } else { admin.createTable(hTableDescriptor); } } catch (IOException ioex) { logger.error("Either table isn't in enabled state or some network problem, Caused by: ", ioex); throw new SchemaGenerationException(ioex, "Either table isn't in enabled state or some network problem."); } }
/** * update method update schema and table for the list of tableInfos * * @param tableInfos * list of TableInfos. */ protected void update(List<TableInfo> tableInfos) { try { if (admin.isTableAvailable(databaseName)) { HTableDescriptor hTableDescriptor = admin.getTableDescriptor(databaseName.getBytes()); addColumnFamilies(tableInfos, hTableDescriptor, true); } else { createTable(tableInfos); } } catch (IOException ioe) { logger.error("Either check for network connection or table isn't in enabled state, Caused by:", ioe); throw new SchemaGenerationException(ioe, "Hbase"); } }
if (admin.isTableAvailable(databaseName))
@Test public void testUsingExternalProperty() throws IOException { Map<String, String> puProperties = new HashMap<String, String>(); puProperties.put("kundera.ddl.auto.prepare", "create-drop"); puProperties.put("kundera.keyspace", "KunderaHbaseKeyspace"); emf = Persistence.createEntityManagerFactory("XmlPropertyTest", puProperties); try { Assert.assertTrue(HBaseCli.utility.getHBaseAdmin().isTableAvailable("KunderaHbaseKeyspace")); } catch (TableNotFoundException tnfe) { logger.error("Error during UserTest, caused by :" + tnfe); } catch (IOException ie) { logger.error("Error during UserTest, caused by :" + ie); } finally { emf.close(); if (HBaseCli.utility.getHBaseAdmin().isTableAvailable("KunderaHbaseKeyspace")) { cli.dropTable("KunderaHbaseKeyspace"); } } } }
/** * drops the keyspace and closes connection */ @After public void tearDown() throws Exception { emf.close(); if (HBaseCli.utility.getHBaseAdmin().isTableAvailable("KunderaHbaseKeyspace")) { cli.dropTable("KunderaHbaseKeyspace"); } }
if (admin.isTableAvailable(databaseName))
Assert.assertTrue(admin.isTableAvailable(TABLE));
/** * Assert schema. * * @throws IOException * Signals that an I/O exception has occurred. */ private void assertSchema() throws IOException { EntityManagerFactory emf = Persistence.createEntityManagerFactory(HBASE_PU, propertyMap); EntityManager em = emf.createEntityManager(); try { admin.getNamespaceDescriptor(SCHEMA); Assert.assertTrue(true); } catch (NamespaceNotFoundException e) { Assert.assertTrue(false); } Assert.assertTrue(admin.isTableAvailable(TABLE_1)); Assert.assertTrue(admin.isTableAvailable(TABLE_2)); HTableDescriptor descriptor = admin.getTableDescriptor(TableName.valueOf(TABLE_1)); Assert.assertTrue(descriptor.hasFamily("USER_HBASE".getBytes())); descriptor = admin.getTableDescriptor(TableName.valueOf(TABLE_2)); Assert.assertTrue(descriptor.hasFamily("PRODUCT_HBASE".getBytes())); em.close(); emf.close(); }
Assert.assertTrue(HBaseCli.utility.getHBaseAdmin().isTableAvailable(TABLE)); cli.dropTable(TABLE);
HColumnDescriptor columnDescriptor1 = new HColumnDescriptor(HBASE_ENTITY_SIMPLE); descriptor1.addFamily(columnDescriptor1); if (admin.isTableAvailable(TABLE)) Assert.assertTrue(admin.isTableAvailable(TABLE)); HTableDescriptor descriptor2 = admin.getTableDescriptor(TABLE.getBytes()); Assert.assertNotNull(descriptor2.getFamilies()); Assert.assertFalse(admin.isTableAvailable(TABLE));
HColumnDescriptor columnDescriptor1 = new HColumnDescriptor(HBASE_ENTITY_SIMPLE); descriptor1.addFamily(columnDescriptor1); if (admin.isTableAvailable(TABLE)) Assert.assertTrue(admin.isTableAvailable(TABLE)); HTableDescriptor descriptor2 = admin.getTableDescriptor(TABLE.getBytes()); Assert.assertNotNull(descriptor2.getFamilies());
@Test public void testCreate() throws IOException { propertyMap.put(PersistenceProperties.KUNDERA_DDL_AUTO_PREPARE, "create"); EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnit, propertyMap); Assert.assertTrue(admin.isTableAvailable(TABLE)); HTableDescriptor descriptor = admin.getTableDescriptor(TABLE.getBytes()); Assert.assertNotNull(descriptor.getFamilies()); Assert.assertEquals(1, descriptor.getFamilies().size()); for (HColumnDescriptor columnDescriptor : descriptor.getFamilies()) { Assert.assertNotNull(columnDescriptor); Assert.assertNotNull(columnDescriptor.getNameAsString()); Assert.assertEquals(HBASE_ENTITY_SIMPLE, columnDescriptor.getNameAsString()); } admin.disableTable(TABLE); admin.deleteTable(TABLE); Assert.assertFalse(admin.isTableAvailable(TABLE)); }
@Test public void testCreatedrop() throws IOException { propertyMap.put(PersistenceProperties.KUNDERA_DDL_AUTO_PREPARE, "create-drop"); EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnit, propertyMap); // schemaManager = new // HBaseSchemaManager(HBaseClientFactory.class.getName(), null); // schemaManager.exportSchema(); Assert.assertTrue(admin.isTableAvailable(TABLE)); HTableDescriptor descriptor = admin.getTableDescriptor(TABLE.getBytes()); Assert.assertNotNull(descriptor.getFamilies()); Assert.assertEquals(1, descriptor.getFamilies().size()); for (HColumnDescriptor columnDescriptor : descriptor.getFamilies()) { Assert.assertNotNull(columnDescriptor); Assert.assertNotNull(columnDescriptor.getNameAsString()); Assert.assertEquals(HBASE_ENTITY_SIMPLE, columnDescriptor.getNameAsString()); } HBaseClientFactory clientFactory = (HBaseClientFactory) ClientResolver.getClientFactory(persistenceUnit); clientFactory.getSchemaManager(null).dropSchema(); Assert.assertTrue(admin.isTableAvailable(TABLE)); Assert.assertNull(admin.getTableDescriptor(TABLE.getBytes()).getFamily(HBASE_ENTITY_SIMPLE.getBytes())); }
@Test public void test() { try { HBaseAdmin admin = HBaseCli.utility.getHBaseAdmin(); Assert.assertTrue(admin.isTableAvailable(table.getBytes())); HTableDescriptor descriptor = admin.getTableDescriptor(table.getBytes()); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdDefault".getBytes())); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdStrategyAuto".getBytes())); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdStrategyIdentity".getBytes())); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdStrategySequence".getBytes())); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdStrategyTable".getBytes())); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdWithOutSequenceGenerator".getBytes())); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdWithOutTableGenerator".getBytes())); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdWithSequenceGenerator".getBytes())); Assert.assertNotNull(descriptor.getFamily("HBaseGeneratedIdWithTableGenerator".getBytes())); Assert.assertNotNull(descriptor.getFamily("kunderahbase".getBytes())); Assert.assertNotNull(descriptor.getFamily("kundera_sequences".getBytes())); } catch (IOException e) { Assert.fail(); } } }
HColumnDescriptor columnDescriptor1 = new HColumnDescriptor("PERSON_NAME"); descriptor1.addFamily(columnDescriptor1); if (admin.isTableAvailable(TABLE)) Assert.assertTrue(admin.isTableAvailable(TABLE)); HTableDescriptor descriptor2 = admin.getTableDescriptor(TABLE.getBytes()); Assert.assertNotNull(descriptor2.getFamilies()); Assert.assertTrue(admin.isTableAvailable(TABLE)); Assert.assertFalse(admin.isTableAvailable(TABLE));