@Test public void testBadQuotaConfig() throws IOException { { String quotaConfigStr = "{\"storage\" : \"124GB3GB\"}"; QuotaConfig quotaConfig = JsonUtils.stringToObject(quotaConfigStr, QuotaConfig.class); Assert.assertNotNull(quotaConfig.getStorage()); Assert.assertEquals(quotaConfig.storageSizeBytes(), -1); } }
@Test public void testQuotaConfig() throws IOException { { String quotaConfigStr = "{\"storage\" : \"100g\"}"; QuotaConfig quotaConfig = JsonUtils.stringToObject(quotaConfigStr, QuotaConfig.class); Assert.assertEquals(quotaConfig.getStorage(), "100g"); Assert.assertEquals(quotaConfig.storageSizeBytes(), 100 * 1024 * 1024 * 1024L); } { String quotaConfigStr = "{}"; QuotaConfig quotaConfig = JsonUtils.stringToObject(quotaConfigStr, QuotaConfig.class); Assert.assertNull(quotaConfig.getStorage()); Assert.assertEquals(quotaConfig.storageSizeBytes(), -1); } }
private void validateLoadedConfig(TableConfig config) { Assert.assertEquals(config.getTableName(), "mytable_OFFLINE"); Assert.assertEquals(config.getQuotaConfig().getStorage(), "125 GiB"); Assert.assertEquals(config.getValidationConfig().getRetentionTimeValue(), "5"); Assert.assertEquals(config.getValidationConfig().getRetentionTimeUnit(), "DAYS"); Assert.assertEquals(config.getTenantConfig().getBroker(), "foo"); Assert.assertEquals(config.getTenantConfig().getServer(), "bar"); Assert.assertEquals(config.getIndexingConfig().getSortedColumn(), Lists.newArrayList("foo")); } }
when(_tableConfig.getQuotaConfig()).thenReturn(_quotaConfig); when(_quotaConfig.storageSizeBytes()).thenReturn(3000L); when(_quotaConfig.getStorage()).thenReturn("3K"); StorageQuotaChecker checker = new MockStorageQuotaChecker(_tableConfig, _tableSizeReader, _controllerMetrics, _pinotHelixResourceManager); when(_quotaConfig.getStorage()).thenReturn("2.8K"); response = checker.isSegmentStorageWithinQuota(TEST_DIR, tableName, "segment1", 1000); Assert.assertFalse(response.isSegmentWithinQuota); when(_quotaConfig.getStorage()).thenReturn("2.8K"); response = checker.isSegmentStorageWithinQuota(TEST_DIR, tableName, "segment1", 1000); Assert.assertFalse(response.isSegmentWithinQuota); when(_quotaConfig.getStorage()).thenReturn("2.8K"); response = checker.isSegmentStorageWithinQuota(TEST_DIR, tableName, "segment1", 1000); Assert.assertTrue(response.isSegmentWithinQuota); when(_quotaConfig.getStorage()).thenReturn("2.8K"); response = checker.isSegmentStorageWithinQuota(TEST_DIR, tableName, "segment1", 1000); Assert.assertFalse(response.isSegmentWithinQuota); when(_quotaConfig.getStorage()).thenReturn("2.8K"); response = checker.isSegmentStorageWithinQuota(TEST_DIR, tableName, "segment1", 1000); Assert.assertTrue(response.isSegmentWithinQuota);
final String tableName = _tableConfig.getTableName(); if (quotaConfig == null || Strings.isNullOrEmpty(quotaConfig.getStorage())) {
modifiedConfig = getTableConfig(tableName, "REALTIME"); Assert.assertNotNull(modifiedConfig.getQuotaConfig()); Assert.assertEquals(modifiedConfig.getQuotaConfig().getStorage(), "10G"); Assert.assertNull(modifiedConfig.getQuotaConfig().getMaxQueriesPerSecond());
Assert.assertEquals(tableConfig.getIndexingConfig().getLoadMode(), "HEAP"); Assert.assertNotNull(tableConfig.getQuotaConfig()); Assert.assertEquals(tableConfig.getQuotaConfig().getStorage(), "30G"); Assert.assertNull(tableConfig.getQuotaConfig().getMaxQueriesPerSecond()); Assert.assertNotNull(tableConfigToCompare.getQuotaConfig()); Assert .assertEquals(tableConfigToCompare.getQuotaConfig().getStorage(), tableConfig.getQuotaConfig().getStorage()); Assert.assertNotNull(tableConfigToCompare.getQuotaConfig()); Assert .assertEquals(tableConfigToCompare.getQuotaConfig().getStorage(), tableConfig.getQuotaConfig().getStorage());