Search in sources :

Example 1 with GlobalStatsDao

use of org.hadoop.ozone.recon.schema.tables.daos.GlobalStatsDao in project ozone by apache.

the class TestTableCountTask method initializeInjector.

private void initializeInjector() throws IOException {
    ReconOMMetadataManager omMetadataManager = getTestReconOmMetadataManager(initializeNewOmMetadataManager(temporaryFolder.newFolder()), temporaryFolder.newFolder());
    globalStatsDao = getDao(GlobalStatsDao.class);
    tableCountTask = new TableCountTask(globalStatsDao, getConfiguration(), omMetadataManager);
    dslContext = getDslContext();
}
Also used : GlobalStatsDao(org.hadoop.ozone.recon.schema.tables.daos.GlobalStatsDao) ReconOMMetadataManager(org.apache.hadoop.ozone.recon.recovery.ReconOMMetadataManager)

Example 2 with GlobalStatsDao

use of org.hadoop.ozone.recon.schema.tables.daos.GlobalStatsDao in project ozone by apache.

the class TestEndpoints method initializeInjector.

private void initializeInjector() throws Exception {
    reconOMMetadataManager = getTestReconOmMetadataManager(initializeNewOmMetadataManager(temporaryFolder.newFolder()), temporaryFolder.newFolder());
    datanodeDetails = randomDatanodeDetails();
    datanodeDetails2 = randomDatanodeDetails();
    datanodeDetails.setHostName(HOST1);
    datanodeDetails.setIpAddress(IP1);
    datanodeDetails2.setHostName(HOST2);
    datanodeDetails2.setIpAddress(IP2);
    pipeline = getRandomPipeline(datanodeDetails);
    pipelineId = pipeline.getId().getId().toString();
    ContainerInfo containerInfo = new ContainerInfo.Builder().setContainerID(containerId).setReplicationConfig(RatisReplicationConfig.getInstance(ReplicationFactor.ONE)).setState(LifeCycleState.OPEN).setOwner("test").setPipelineID(pipeline.getId()).build();
    ContainerWithPipeline containerWithPipeline = new ContainerWithPipeline(containerInfo, pipeline);
    StorageContainerLocationProtocol mockScmClient = mock(StorageContainerLocationProtocol.class);
    StorageContainerServiceProvider mockScmServiceProvider = mock(StorageContainerServiceProviderImpl.class);
    when(mockScmServiceProvider.getPipeline(pipeline.getId().getProtobuf())).thenReturn(pipeline);
    when(mockScmServiceProvider.getContainerWithPipeline(containerId)).thenReturn(containerWithPipeline);
    List<Long> containerIDs = new LinkedList<>();
    containerIDs.add(containerId);
    List<ContainerWithPipeline> cpw = new LinkedList<>();
    cpw.add(containerWithPipeline);
    when(mockScmServiceProvider.getExistContainerWithPipelinesInBatch(containerIDs)).thenReturn(cpw);
    InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream(PROMETHEUS_TEST_RESPONSE_FILE);
    reconUtilsMock = mock(ReconUtils.class);
    HttpURLConnection urlConnectionMock = mock(HttpURLConnection.class);
    when(urlConnectionMock.getResponseCode()).thenReturn(HttpServletResponse.SC_OK);
    when(urlConnectionMock.getInputStream()).thenReturn(inputStream);
    when(reconUtilsMock.makeHttpCall(any(URLConnectionFactory.class), anyString(), anyBoolean())).thenReturn(urlConnectionMock);
    when(reconUtilsMock.getReconDbDir(any(OzoneConfiguration.class), anyString())).thenReturn(GenericTestUtils.getRandomizedTestDir());
    ReconTestInjector reconTestInjector = new ReconTestInjector.Builder(temporaryFolder).withReconSqlDb().withReconOm(reconOMMetadataManager).withOmServiceProvider(mock(OzoneManagerServiceProviderImpl.class)).addBinding(StorageContainerServiceProvider.class, mockScmServiceProvider).addBinding(OzoneStorageContainerManager.class, ReconStorageContainerManagerFacade.class).withContainerDB().addBinding(ClusterStateEndpoint.class).addBinding(NodeEndpoint.class).addBinding(MetricsServiceProviderFactory.class).addBinding(ContainerHealthSchemaManager.class).addBinding(UtilizationEndpoint.class).addBinding(ReconUtils.class, reconUtilsMock).addBinding(StorageContainerLocationProtocol.class, mockScmClient).build();
    nodeEndpoint = reconTestInjector.getInstance(NodeEndpoint.class);
    pipelineEndpoint = reconTestInjector.getInstance(PipelineEndpoint.class);
    fileCountBySizeDao = getDao(FileCountBySizeDao.class);
    GlobalStatsDao globalStatsDao = getDao(GlobalStatsDao.class);
    UtilizationSchemaDefinition utilizationSchemaDefinition = getSchemaDefinition(UtilizationSchemaDefinition.class);
    Configuration sqlConfiguration = reconTestInjector.getInstance(Configuration.class);
    utilizationEndpoint = new UtilizationEndpoint(fileCountBySizeDao, utilizationSchemaDefinition);
    fileSizeCountTask = new FileSizeCountTask(fileCountBySizeDao, utilizationSchemaDefinition);
    tableCountTask = new TableCountTask(globalStatsDao, sqlConfiguration, reconOMMetadataManager);
    reconScm = (ReconStorageContainerManagerFacade) reconTestInjector.getInstance(OzoneStorageContainerManager.class);
    clusterStateEndpoint = new ClusterStateEndpoint(reconScm, globalStatsDao);
    MetricsServiceProviderFactory metricsServiceProviderFactory = reconTestInjector.getInstance(MetricsServiceProviderFactory.class);
    metricsProxyEndpoint = new MetricsProxyEndpoint(metricsServiceProviderFactory);
    dslContext = getDslContext();
}
Also used : StorageContainerServiceProvider(org.apache.hadoop.ozone.recon.spi.StorageContainerServiceProvider) TableCountTask(org.apache.hadoop.ozone.recon.tasks.TableCountTask) OzoneConfiguration(org.apache.hadoop.hdds.conf.OzoneConfiguration) Configuration(org.jooq.Configuration) UtilizationSchemaDefinition(org.hadoop.ozone.recon.schema.UtilizationSchemaDefinition) ContainerWithPipeline(org.apache.hadoop.hdds.scm.container.common.helpers.ContainerWithPipeline) OzoneStorageContainerManager(org.apache.hadoop.hdds.scm.server.OzoneStorageContainerManager) HttpURLConnection(java.net.HttpURLConnection) StorageContainerLocationProtocol(org.apache.hadoop.hdds.scm.protocol.StorageContainerLocationProtocol) GlobalStatsDao(org.hadoop.ozone.recon.schema.tables.daos.GlobalStatsDao) ReconTestInjector(org.apache.hadoop.ozone.recon.ReconTestInjector) FileSizeCountTask(org.apache.hadoop.ozone.recon.tasks.FileSizeCountTask) URLConnectionFactory(org.apache.hadoop.hdfs.web.URLConnectionFactory) ReconStorageContainerManagerFacade(org.apache.hadoop.ozone.recon.scm.ReconStorageContainerManagerFacade) MetricsServiceProviderFactory(org.apache.hadoop.ozone.recon.MetricsServiceProviderFactory) ReconUtils(org.apache.hadoop.ozone.recon.ReconUtils) InputStream(java.io.InputStream) OzoneConfiguration(org.apache.hadoop.hdds.conf.OzoneConfiguration) FileCountBySizeDao(org.hadoop.ozone.recon.schema.tables.daos.FileCountBySizeDao) LinkedList(java.util.LinkedList) ContainerInfo(org.apache.hadoop.hdds.scm.container.ContainerInfo)

Example 3 with GlobalStatsDao

use of org.hadoop.ozone.recon.schema.tables.daos.GlobalStatsDao in project ozone by apache.

the class TestStatsSchemaDefinition method testGlobalStatsCRUDOperations.

@Test
public void testGlobalStatsCRUDOperations() throws Exception {
    Connection connection = getConnection();
    DatabaseMetaData metaData = connection.getMetaData();
    ResultSet resultSet = metaData.getTables(null, null, GLOBAL_STATS_TABLE_NAME, null);
    while (resultSet.next()) {
        Assert.assertEquals(GLOBAL_STATS_TABLE_NAME, resultSet.getString("TABLE_NAME"));
    }
    GlobalStatsDao dao = getDao(GlobalStatsDao.class);
    long now = System.currentTimeMillis();
    GlobalStats newRecord = new GlobalStats();
    newRecord.setLastUpdatedTimestamp(new Timestamp(now));
    newRecord.setKey("key1");
    newRecord.setValue(500L);
    // Create
    dao.insert(newRecord);
    GlobalStats newRecord2 = new GlobalStats();
    newRecord2.setLastUpdatedTimestamp(new Timestamp(now + 1000L));
    newRecord2.setKey("key2");
    newRecord2.setValue(10L);
    dao.insert(newRecord2);
    // Read
    GlobalStats dbRecord = dao.findById("key1");
    Assert.assertEquals("key1", dbRecord.getKey());
    Assert.assertEquals(Long.valueOf(500), dbRecord.getValue());
    Assert.assertEquals(new Timestamp(now), dbRecord.getLastUpdatedTimestamp());
    dbRecord = dao.findById("key2");
    Assert.assertEquals("key2", dbRecord.getKey());
    Assert.assertEquals(Long.valueOf(10), dbRecord.getValue());
    Assert.assertEquals(new Timestamp(now + 1000L), dbRecord.getLastUpdatedTimestamp());
    // Update
    dbRecord.setValue(100L);
    dbRecord.setLastUpdatedTimestamp(new Timestamp(now + 2000L));
    dao.update(dbRecord);
    // Read updated
    dbRecord = dao.findById("key2");
    Assert.assertEquals(new Timestamp(now + 2000L), dbRecord.getLastUpdatedTimestamp());
    Assert.assertEquals(Long.valueOf(100L), dbRecord.getValue());
    // Delete
    dao.deleteById("key1");
    // Verify
    dbRecord = dao.findById("key1");
    Assert.assertNull(dbRecord);
}
Also used : GlobalStats(org.hadoop.ozone.recon.schema.tables.pojos.GlobalStats) GlobalStatsDao(org.hadoop.ozone.recon.schema.tables.daos.GlobalStatsDao) Connection(java.sql.Connection) ResultSet(java.sql.ResultSet) DatabaseMetaData(java.sql.DatabaseMetaData) Timestamp(java.sql.Timestamp) Test(org.junit.Test)

Aggregations

GlobalStatsDao (org.hadoop.ozone.recon.schema.tables.daos.GlobalStatsDao)3 InputStream (java.io.InputStream)1 HttpURLConnection (java.net.HttpURLConnection)1 Connection (java.sql.Connection)1 DatabaseMetaData (java.sql.DatabaseMetaData)1 ResultSet (java.sql.ResultSet)1 Timestamp (java.sql.Timestamp)1 LinkedList (java.util.LinkedList)1 OzoneConfiguration (org.apache.hadoop.hdds.conf.OzoneConfiguration)1 ContainerInfo (org.apache.hadoop.hdds.scm.container.ContainerInfo)1 ContainerWithPipeline (org.apache.hadoop.hdds.scm.container.common.helpers.ContainerWithPipeline)1 StorageContainerLocationProtocol (org.apache.hadoop.hdds.scm.protocol.StorageContainerLocationProtocol)1 OzoneStorageContainerManager (org.apache.hadoop.hdds.scm.server.OzoneStorageContainerManager)1 URLConnectionFactory (org.apache.hadoop.hdfs.web.URLConnectionFactory)1 MetricsServiceProviderFactory (org.apache.hadoop.ozone.recon.MetricsServiceProviderFactory)1 ReconTestInjector (org.apache.hadoop.ozone.recon.ReconTestInjector)1 ReconUtils (org.apache.hadoop.ozone.recon.ReconUtils)1 ReconOMMetadataManager (org.apache.hadoop.ozone.recon.recovery.ReconOMMetadataManager)1 ReconStorageContainerManagerFacade (org.apache.hadoop.ozone.recon.scm.ReconStorageContainerManagerFacade)1 StorageContainerServiceProvider (org.apache.hadoop.ozone.recon.spi.StorageContainerServiceProvider)1