public void createBucket(BucketSettings bucketSetting, UserSettings userSettings, boolean primaryIndex) { ClusterManager clusterManager = getCouchbaseCluster().clusterManager(clusterUsername, clusterPassword); // Insert Bucket BucketSettings bucketSettings = clusterManager.insertBucket(bucketSetting); try { // Insert Bucket user clusterManager.upsertUser(AuthDomain.LOCAL, bucketSetting.name(), userSettings); } catch (Exception e) { logger().warn("Unable to insert user '" + bucketSetting.name() + "', maybe you are using older version"); } if (index) { Bucket bucket = getCouchbaseCluster().openBucket(bucketSettings.name(), bucketSettings.password()); new CouchbaseQueryServiceWaitStrategy(bucket).waitUntilReady(this); if (primaryIndex) { bucket.query(Index.createPrimaryIndex().on(bucketSetting.name())); } } }
private void createPrimaryIndex(Bucket bucket, CouchbaseBuildDefinition buildDefinition) { LOG.debug("Creating primary index in bucket '{}'", buildDefinition.getBucketName()); N1qlQueryResult result = bucket.query(N1qlQuery.simple( Index.createPrimaryIndex().on(bucket.name()) )); if (!result.finalSuccess()) { LOG.error("Failed to create primary index: {}", result.errors()); throw new EnvironmentBuilderException("Failed to create primary index for " + buildDefinition.getBucketName()); } LOG.debug("Primary index created in bucket '{}'", buildDefinition.getBucketName()); }
private Observable<Void> buildN1qlPrimary(final RepositoryInformation metadata, Bucket bucket) { final String bucketName = bucket.name(); Statement createPrimary = Index.createPrimaryIndex() .on(bucketName) .using(IndexType.GSI);
private Observable<Void> buildN1qlPrimary(final RepositoryInformation metadata, Bucket bucket) { final String bucketName = bucket.name(); Statement createPrimary = Index.createPrimaryIndex() .on(bucketName) .using(IndexType.GSI);
@Override public Observable<Boolean> createN1qlPrimaryIndex(final String customName, final boolean ignoreIfExist, boolean defer) { Statement createIndex; UsingWithPath usingWithPath = Index.createNamedPrimaryIndex(customName).on(bucket); if (defer) { createIndex = usingWithPath.withDefer(); } else { createIndex = usingWithPath; } return queryExecutor.execute(N1qlQuery.simple(createIndex), env, env.managementTimeout(), TimeUnit.MILLISECONDS) .compose(checkIndexCreation(ignoreIfExist, "Error creating custom primary index " + customName)); }
@Override public Observable<Boolean> createN1qlPrimaryIndex(final boolean ignoreIfExist, boolean defer) { Statement createIndex; UsingWithPath usingWithPath = Index.createPrimaryIndex().on(bucket); if (defer) { createIndex = usingWithPath.withDefer(); } else { createIndex = usingWithPath; } return queryExecutor.execute(N1qlQuery.simple(createIndex), env, env.managementTimeout(), TimeUnit.MILLISECONDS) .compose(checkIndexCreation(ignoreIfExist, "Error creating primary index")); }
public void createBucket(BucketSettings bucketSetting, boolean primaryIndex) { ClusterManager clusterManager = getCouchbaseCluster().clusterManager(clusterUsername, clusterPassword); // Insert Bucket BucketSettings bucketSettings = clusterManager.insertBucket(bucketSetting); // Insert Bucket admin user UserSettings userSettings = UserSettings.build() .password(bucketSetting.password()) .roles(Collections.singletonList(new UserRole("bucket_admin", bucketSetting.name()))); try { clusterManager.upsertUser(AuthDomain.LOCAL, bucketSetting.name(), userSettings); } catch (Exception e) { logger().warn("Unable to insert user '" + bucketSetting.name() + "', maybe you are using older version"); } if (index) { Bucket bucket = getCouchbaseCluster().openBucket(bucketSettings.name(), bucketSettings.password()); new CouchbaseQueryServiceWaitStrategy(bucket).waitUntilReady(this); if (primaryIndex) { bucket.query(Index.createPrimaryIndex().on(bucketSetting.name())); } } }