use of com.thinkaurelius.titan.diskstorage.keycolumnvalue.StoreFeatures in project titan by thinkaurelius.
the class AbstractStoreManager method getMetaDataSchema.
public EntryMetaData[] getMetaDataSchema(String storeName) {
List<EntryMetaData> schemaBuilder = Lists.newArrayList();
StoreFeatures features = getFeatures();
if (features.hasTimestamps() && storageConfig.get(STORE_META_TIMESTAMPS, storeName))
schemaBuilder.add(EntryMetaData.TIMESTAMP);
if (features.hasCellTTL() && storageConfig.get(STORE_META_TTL, storeName))
schemaBuilder.add(EntryMetaData.TTL);
if (features.hasVisibility() && storageConfig.get(STORE_META_VISIBILITY, storeName))
schemaBuilder.add(EntryMetaData.VISIBILITY);
if (schemaBuilder.isEmpty())
return StaticArrayEntry.EMPTY_SCHEMA;
return schemaBuilder.toArray(new EntryMetaData[schemaBuilder.size()]);
}
use of com.thinkaurelius.titan.diskstorage.keycolumnvalue.StoreFeatures in project titan by thinkaurelius.
the class TitanGraphBaseTest method openLog.
private Log openLog(String logManagerName, String logName) {
try {
ModifiableConfiguration configuration = new ModifiableConfiguration(GraphDatabaseConfiguration.ROOT_NS, config.copy(), BasicConfiguration.Restriction.NONE);
configuration.set(GraphDatabaseConfiguration.UNIQUE_INSTANCE_ID, "reader");
configuration.set(GraphDatabaseConfiguration.LOG_READ_INTERVAL, Duration.ofMillis(500L), logManagerName);
if (logStoreManager == null) {
logStoreManager = Backend.getStorageManager(configuration);
}
StoreFeatures f = logStoreManager.getFeatures();
boolean part = f.isDistributed() && f.isKeyOrdered();
if (part) {
for (String logname : new String[] { USER_LOG, TRANSACTION_LOG, MANAGEMENT_LOG }) configuration.set(KCVSLogManager.LOG_MAX_PARTITIONS, 8, logname);
}
assert logStoreManager != null;
if (!logManagers.containsKey(logManagerName)) {
//Open log manager - only supports KCVSLog
Configuration logConfig = configuration.restrictTo(logManagerName);
Preconditions.checkArgument(logConfig.get(LOG_BACKEND).equals(LOG_BACKEND.getDefaultValue()));
logManagers.put(logManagerName, new KCVSLogManager(logStoreManager, logConfig));
}
assert logManagers.containsKey(logManagerName);
return logManagers.get(logManagerName).openLog(logName);
} catch (BackendException e) {
throw new TitanException("Could not open log: " + logName, e);
}
}
Aggregations