TBR: Regenerating vdl files and fixing the namespaces now
that syncbase has moved to release.
This should fix the broken build.
Change-Id: I8d3fd517975ddc042a1788e8404805f8398b9d19
diff --git a/src/app.js b/src/app.js
index ba39037..83d63c1 100644
--- a/src/app.js
+++ b/src/app.js
@@ -6,7 +6,7 @@
var Database = require('./nosql/database');
var util = require('./util');
-var vdl = require('./gen-vdl/v.io/syncbase/v23/services/syncbase');
+var vdl = require('./gen-vdl/v.io/v23/services/syncbase');
var wireSignature = vdl.App.prototype._serviceDescription;
diff --git a/src/gen-vdl/v.io/v23/security/index.js b/src/gen-vdl/v.io/v23/security/index.js
index de0e2eb..0ccd36f 100644
--- a/src/gen-vdl/v.io/v23/security/index.js
+++ b/src/gen-vdl/v.io/v23/security/index.js
@@ -279,12 +279,6 @@
module.exports.SignatureForDischarge = canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(vdl.types.STRING))("D1", true), vdl.types.STRING);
- module.exports.SignatureForMessageSigningV0 = canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(vdl.types.STRING))("S", true), vdl.types.STRING);
-
- module.exports.SignatureForBlessingCertificatesV0 = canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(vdl.types.STRING))("B", true), vdl.types.STRING);
-
- module.exports.SignatureForDischargeV0 = canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(vdl.types.STRING))("D", true), vdl.types.STRING);
-
// Errors:
diff --git a/src/gen-vdl/v.io/syncbase/v23/services/syncbase/index.js b/src/gen-vdl/v.io/v23/services/syncbase/index.js
similarity index 96%
rename from src/gen-vdl/v.io/syncbase/v23/services/syncbase/index.js
rename to src/gen-vdl/v.io/v23/services/syncbase/index.js
index 3777938..50d475b 100644
--- a/src/gen-vdl/v.io/syncbase/v23/services/syncbase/index.js
+++ b/src/gen-vdl/v.io/v23/services/syncbase/index.js
@@ -12,8 +12,8 @@
-var access = require('./../../../../v23/security/access');
-var permissions = require('./../../../../v23/services/permissions');
+var access = require('./../../security/access');
+var permissions = require('./../permissions');
module.exports = {};
@@ -30,7 +30,7 @@
// Errors:
-module.exports.InvalidNameError = makeError('v.io/syncbase/v23/services/syncbase.InvalidName', actions.NO_RETRY, {
+module.exports.InvalidNameError = makeError('v.io/v23/services/syncbase.InvalidName', actions.NO_RETRY, {
'en': '{1:}{2:} invalid name: {3}',
}, [
vdl.types.STRING,
@@ -61,7 +61,7 @@
Service.prototype._serviceDescription = {
name: 'Service',
- pkgPath: 'v.io/syncbase/v23/services/syncbase',
+ pkgPath: 'v.io/v23/services/syncbase',
doc: "// Service represents a Vanadium Syncbase service.\n// Service.Glob operates over App names.",
embeds: [{
name: 'Object',
@@ -151,7 +151,7 @@
App.prototype._serviceDescription = {
name: 'App',
- pkgPath: 'v.io/syncbase/v23/services/syncbase',
+ pkgPath: 'v.io/v23/services/syncbase',
doc: "// App represents the data for a specific app instance (possibly a combination\n// of user, device, and app).\n// App.Glob operates over Database names.",
embeds: [{
name: 'Object',
diff --git a/src/gen-vdl/v.io/syncbase/v23/services/syncbase/nosql/index.js b/src/gen-vdl/v.io/v23/services/syncbase/nosql/index.js
similarity index 83%
rename from src/gen-vdl/v.io/syncbase/v23/services/syncbase/nosql/index.js
rename to src/gen-vdl/v.io/v23/services/syncbase/nosql/index.js
index 168e415..1324162 100644
--- a/src/gen-vdl/v.io/syncbase/v23/services/syncbase/nosql/index.js
+++ b/src/gen-vdl/v.io/v23/services/syncbase/nosql/index.js
@@ -12,9 +12,9 @@
-var access = require('./../../../../../v23/security/access');
-var permissions = require('./../../../../../v23/services/permissions');
-var watch = require('./../../../../../v23/services/watch');
+var access = require('./../../../security/access');
+var permissions = require('./../../permissions');
+var watch = require('./../../watch');
module.exports = {};
@@ -28,19 +28,32 @@
var _type5 = new vdl.Type();
var _type6 = new vdl.Type();
var _type7 = new vdl.Type();
+var _type8 = new vdl.Type();
+var _type9 = new vdl.Type();
+var _typeBatchInfo = new vdl.Type();
var _typeBatchOptions = new vdl.Type();
+var _typeBatchSource = new vdl.Type();
var _typeBlobFetchState = new vdl.Type();
var _typeBlobFetchStatus = new vdl.Type();
var _typeBlobRef = new vdl.Type();
+var _typeConflictData = new vdl.Type();
+var _typeConflictInfo = new vdl.Type();
var _typeCrPolicy = new vdl.Type();
var _typeCrRule = new vdl.Type();
var _typeKeyValue = new vdl.Type();
+var _typeOperation = new vdl.Type();
var _typePrefixPermissions = new vdl.Type();
+var _typeResolutionInfo = new vdl.Type();
var _typeResolverType = new vdl.Type();
+var _typeRowInfo = new vdl.Type();
+var _typeRowOp = new vdl.Type();
+var _typeScanOp = new vdl.Type();
var _typeSchemaMetadata = new vdl.Type();
var _typeStoreChange = new vdl.Type();
var _typeSyncGroupMemberInfo = new vdl.Type();
var _typeSyncGroupSpec = new vdl.Type();
+var _typeValue = new vdl.Type();
+var _typeValueSelection = new vdl.Type();
_type1.kind = vdl.kind.LIST;
_type1.name = "";
_type1.elem = vdl.types.STRING;
@@ -56,51 +69,90 @@
_type4.elem = _typeCrRule;
_type5.kind = vdl.kind.OPTIONAL;
_type5.name = "";
-_type5.elem = _typeSchemaMetadata;
+_type5.elem = _typeValue;
_type6.kind = vdl.kind.LIST;
_type6.name = "";
-_type6.elem = vdl.types.ANY;
-_type7.kind = vdl.kind.LIST;
+_type6.elem = vdl.types.UINT16;
+_type7.kind = vdl.kind.OPTIONAL;
_type7.name = "";
-_type7.elem = _typePrefixPermissions;
+_type7.elem = _typeSchemaMetadata;
+_type8.kind = vdl.kind.LIST;
+_type8.name = "";
+_type8.elem = vdl.types.ANY;
+_type9.kind = vdl.kind.LIST;
+_type9.name = "";
+_type9.elem = _typePrefixPermissions;
+_typeBatchInfo.kind = vdl.kind.STRUCT;
+_typeBatchInfo.name = "v.io/v23/services/syncbase/nosql.BatchInfo";
+_typeBatchInfo.fields = [{name: "Id", type: vdl.types.UINT16}, {name: "Hint", type: vdl.types.STRING}, {name: "Source", type: _typeBatchSource}];
_typeBatchOptions.kind = vdl.kind.STRUCT;
-_typeBatchOptions.name = "v.io/syncbase/v23/services/syncbase/nosql.BatchOptions";
+_typeBatchOptions.name = "v.io/v23/services/syncbase/nosql.BatchOptions";
_typeBatchOptions.fields = [{name: "Hint", type: vdl.types.STRING}, {name: "ReadOnly", type: vdl.types.BOOL}];
+_typeBatchSource.kind = vdl.kind.ENUM;
+_typeBatchSource.name = "v.io/v23/services/syncbase/nosql.BatchSource";
+_typeBatchSource.labels = ["Local", "Remote"];
_typeBlobFetchState.kind = vdl.kind.ENUM;
-_typeBlobFetchState.name = "v.io/syncbase/v23/services/syncbase/nosql.BlobFetchState";
+_typeBlobFetchState.name = "v.io/v23/services/syncbase/nosql.BlobFetchState";
_typeBlobFetchState.labels = ["Pending", "Locating", "Fetching", "Done"];
_typeBlobFetchStatus.kind = vdl.kind.STRUCT;
-_typeBlobFetchStatus.name = "v.io/syncbase/v23/services/syncbase/nosql.BlobFetchStatus";
+_typeBlobFetchStatus.name = "v.io/v23/services/syncbase/nosql.BlobFetchStatus";
_typeBlobFetchStatus.fields = [{name: "State", type: _typeBlobFetchState}, {name: "Received", type: vdl.types.INT64}, {name: "Total", type: vdl.types.INT64}];
_typeBlobRef.kind = vdl.kind.STRING;
-_typeBlobRef.name = "v.io/syncbase/v23/services/syncbase/nosql.BlobRef";
+_typeBlobRef.name = "v.io/v23/services/syncbase/nosql.BlobRef";
+_typeConflictData.kind = vdl.kind.UNION;
+_typeConflictData.name = "v.io/v23/services/syncbase/nosql.ConflictData";
+_typeConflictData.fields = [{name: "Batch", type: _typeBatchInfo}, {name: "Row", type: _typeRowInfo}];
+_typeConflictInfo.kind = vdl.kind.STRUCT;
+_typeConflictInfo.name = "v.io/v23/services/syncbase/nosql.ConflictInfo";
+_typeConflictInfo.fields = [{name: "Data", type: _typeConflictData}, {name: "Continued", type: vdl.types.BOOL}];
_typeCrPolicy.kind = vdl.kind.STRUCT;
-_typeCrPolicy.name = "v.io/syncbase/v23/services/syncbase/nosql.CrPolicy";
+_typeCrPolicy.name = "v.io/v23/services/syncbase/nosql.CrPolicy";
_typeCrPolicy.fields = [{name: "Rules", type: _type4}];
_typeCrRule.kind = vdl.kind.STRUCT;
-_typeCrRule.name = "v.io/syncbase/v23/services/syncbase/nosql.CrRule";
+_typeCrRule.name = "v.io/v23/services/syncbase/nosql.CrRule";
_typeCrRule.fields = [{name: "TableName", type: vdl.types.STRING}, {name: "KeyPrefix", type: vdl.types.STRING}, {name: "Type", type: vdl.types.STRING}, {name: "Resolver", type: _typeResolverType}];
_typeKeyValue.kind = vdl.kind.STRUCT;
-_typeKeyValue.name = "v.io/syncbase/v23/services/syncbase/nosql.KeyValue";
+_typeKeyValue.name = "v.io/v23/services/syncbase/nosql.KeyValue";
_typeKeyValue.fields = [{name: "Key", type: vdl.types.STRING}, {name: "Value", type: _type3}];
+_typeOperation.kind = vdl.kind.UNION;
+_typeOperation.name = "v.io/v23/services/syncbase/nosql.Operation";
+_typeOperation.fields = [{name: "Read", type: _typeRowOp}, {name: "Write", type: _typeRowOp}, {name: "Scan", type: _typeScanOp}];
_typePrefixPermissions.kind = vdl.kind.STRUCT;
-_typePrefixPermissions.name = "v.io/syncbase/v23/services/syncbase/nosql.PrefixPermissions";
+_typePrefixPermissions.name = "v.io/v23/services/syncbase/nosql.PrefixPermissions";
_typePrefixPermissions.fields = [{name: "Prefix", type: vdl.types.STRING}, {name: "Perms", type: new access.Permissions()._type}];
+_typeResolutionInfo.kind = vdl.kind.STRUCT;
+_typeResolutionInfo.name = "v.io/v23/services/syncbase/nosql.ResolutionInfo";
+_typeResolutionInfo.fields = [{name: "Key", type: vdl.types.STRING}, {name: "Selection", type: _typeValueSelection}, {name: "Result", type: _type5}, {name: "Continued", type: vdl.types.BOOL}];
_typeResolverType.kind = vdl.kind.ENUM;
-_typeResolverType.name = "v.io/syncbase/v23/services/syncbase/nosql.ResolverType";
+_typeResolverType.name = "v.io/v23/services/syncbase/nosql.ResolverType";
_typeResolverType.labels = ["LastWins", "AppResolves", "Defer"];
+_typeRowInfo.kind = vdl.kind.STRUCT;
+_typeRowInfo.name = "v.io/v23/services/syncbase/nosql.RowInfo";
+_typeRowInfo.fields = [{name: "Op", type: _typeOperation}, {name: "BatchIds", type: _type6}];
+_typeRowOp.kind = vdl.kind.STRUCT;
+_typeRowOp.name = "v.io/v23/services/syncbase/nosql.RowOp";
+_typeRowOp.fields = [{name: "Key", type: vdl.types.STRING}, {name: "LocalValue", type: _type5}, {name: "RemoteValue", type: _type5}, {name: "AncestorValue", type: _type5}];
+_typeScanOp.kind = vdl.kind.STRUCT;
+_typeScanOp.name = "v.io/v23/services/syncbase/nosql.ScanOp";
+_typeScanOp.fields = [{name: "Start", type: vdl.types.STRING}, {name: "Limit", type: vdl.types.STRING}];
_typeSchemaMetadata.kind = vdl.kind.STRUCT;
-_typeSchemaMetadata.name = "v.io/syncbase/v23/services/syncbase/nosql.SchemaMetadata";
+_typeSchemaMetadata.name = "v.io/v23/services/syncbase/nosql.SchemaMetadata";
_typeSchemaMetadata.fields = [{name: "Version", type: vdl.types.INT32}, {name: "Policy", type: _typeCrPolicy}];
_typeStoreChange.kind = vdl.kind.STRUCT;
-_typeStoreChange.name = "v.io/syncbase/v23/services/syncbase/nosql.StoreChange";
+_typeStoreChange.name = "v.io/v23/services/syncbase/nosql.StoreChange";
_typeStoreChange.fields = [{name: "Value", type: _type3}, {name: "FromSync", type: vdl.types.BOOL}];
_typeSyncGroupMemberInfo.kind = vdl.kind.STRUCT;
-_typeSyncGroupMemberInfo.name = "v.io/syncbase/v23/services/syncbase/nosql.SyncGroupMemberInfo";
+_typeSyncGroupMemberInfo.name = "v.io/v23/services/syncbase/nosql.SyncGroupMemberInfo";
_typeSyncGroupMemberInfo.fields = [{name: "SyncPriority", type: vdl.types.BYTE}];
_typeSyncGroupSpec.kind = vdl.kind.STRUCT;
-_typeSyncGroupSpec.name = "v.io/syncbase/v23/services/syncbase/nosql.SyncGroupSpec";
+_typeSyncGroupSpec.name = "v.io/v23/services/syncbase/nosql.SyncGroupSpec";
_typeSyncGroupSpec.fields = [{name: "Description", type: vdl.types.STRING}, {name: "Perms", type: new access.Permissions()._type}, {name: "Prefixes", type: _type1}, {name: "MountTables", type: _type1}, {name: "IsPrivate", type: vdl.types.BOOL}];
+_typeValue.kind = vdl.kind.STRUCT;
+_typeValue.name = "v.io/v23/services/syncbase/nosql.Value";
+_typeValue.fields = [{name: "Bytes", type: _type3}, {name: "WriteTs", type: vdl.types.INT64}];
+_typeValueSelection.kind = vdl.kind.ENUM;
+_typeValueSelection.name = "v.io/v23/services/syncbase/nosql.ValueSelection";
+_typeValueSelection.labels = ["Local", "Remote", "Other"];
_type1.freeze();
_type2.freeze();
_type3.freeze();
@@ -108,20 +160,38 @@
_type5.freeze();
_type6.freeze();
_type7.freeze();
+_type8.freeze();
+_type9.freeze();
+_typeBatchInfo.freeze();
_typeBatchOptions.freeze();
+_typeBatchSource.freeze();
_typeBlobFetchState.freeze();
_typeBlobFetchStatus.freeze();
_typeBlobRef.freeze();
+_typeConflictData.freeze();
+_typeConflictInfo.freeze();
_typeCrPolicy.freeze();
_typeCrRule.freeze();
_typeKeyValue.freeze();
+_typeOperation.freeze();
_typePrefixPermissions.freeze();
+_typeResolutionInfo.freeze();
_typeResolverType.freeze();
+_typeRowInfo.freeze();
+_typeRowOp.freeze();
+_typeScanOp.freeze();
_typeSchemaMetadata.freeze();
_typeStoreChange.freeze();
_typeSyncGroupMemberInfo.freeze();
_typeSyncGroupSpec.freeze();
+_typeValue.freeze();
+_typeValueSelection.freeze();
+module.exports.BatchInfo = (vdl.registry.lookupOrCreateConstructor(_typeBatchInfo));
module.exports.BatchOptions = (vdl.registry.lookupOrCreateConstructor(_typeBatchOptions));
+module.exports.BatchSource = {
+ LOCAL: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeBatchSource))('Local', true), _typeBatchSource),
+ REMOTE: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeBatchSource))('Remote', true), _typeBatchSource),
+};
module.exports.BlobFetchState = {
PENDING: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeBlobFetchState))('Pending', true), _typeBlobFetchState),
LOCATING: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeBlobFetchState))('Locating', true), _typeBlobFetchState),
@@ -130,19 +200,32 @@
};
module.exports.BlobFetchStatus = (vdl.registry.lookupOrCreateConstructor(_typeBlobFetchStatus));
module.exports.BlobRef = (vdl.registry.lookupOrCreateConstructor(_typeBlobRef));
+module.exports.ConflictData = (vdl.registry.lookupOrCreateConstructor(_typeConflictData));
+module.exports.ConflictInfo = (vdl.registry.lookupOrCreateConstructor(_typeConflictInfo));
module.exports.CrPolicy = (vdl.registry.lookupOrCreateConstructor(_typeCrPolicy));
module.exports.CrRule = (vdl.registry.lookupOrCreateConstructor(_typeCrRule));
module.exports.KeyValue = (vdl.registry.lookupOrCreateConstructor(_typeKeyValue));
+module.exports.Operation = (vdl.registry.lookupOrCreateConstructor(_typeOperation));
module.exports.PrefixPermissions = (vdl.registry.lookupOrCreateConstructor(_typePrefixPermissions));
+module.exports.ResolutionInfo = (vdl.registry.lookupOrCreateConstructor(_typeResolutionInfo));
module.exports.ResolverType = {
LAST_WINS: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeResolverType))('LastWins', true), _typeResolverType),
APP_RESOLVES: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeResolverType))('AppResolves', true), _typeResolverType),
DEFER: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeResolverType))('Defer', true), _typeResolverType),
};
+module.exports.RowInfo = (vdl.registry.lookupOrCreateConstructor(_typeRowInfo));
+module.exports.RowOp = (vdl.registry.lookupOrCreateConstructor(_typeRowOp));
+module.exports.ScanOp = (vdl.registry.lookupOrCreateConstructor(_typeScanOp));
module.exports.SchemaMetadata = (vdl.registry.lookupOrCreateConstructor(_typeSchemaMetadata));
module.exports.StoreChange = (vdl.registry.lookupOrCreateConstructor(_typeStoreChange));
module.exports.SyncGroupMemberInfo = (vdl.registry.lookupOrCreateConstructor(_typeSyncGroupMemberInfo));
module.exports.SyncGroupSpec = (vdl.registry.lookupOrCreateConstructor(_typeSyncGroupSpec));
+module.exports.Value = (vdl.registry.lookupOrCreateConstructor(_typeValue));
+module.exports.ValueSelection = {
+ LOCAL: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeValueSelection))('Local', true), _typeValueSelection),
+ REMOTE: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeValueSelection))('Remote', true), _typeValueSelection),
+ OTHER: canonicalize.reduce(new (vdl.registry.lookupOrCreateConstructor(_typeValueSelection))('Other', true), _typeValueSelection),
+};
@@ -155,37 +238,37 @@
// Errors:
-module.exports.BoundToBatchError = makeError('v.io/syncbase/v23/services/syncbase/nosql.BoundToBatch', actions.NO_RETRY, {
+module.exports.BoundToBatchError = makeError('v.io/v23/services/syncbase/nosql.BoundToBatch', actions.NO_RETRY, {
'en': '{1:}{2:} bound to batch',
}, [
]);
-module.exports.NotBoundToBatchError = makeError('v.io/syncbase/v23/services/syncbase/nosql.NotBoundToBatch', actions.NO_RETRY, {
+module.exports.NotBoundToBatchError = makeError('v.io/v23/services/syncbase/nosql.NotBoundToBatch', actions.NO_RETRY, {
'en': '{1:}{2:} not bound to batch',
}, [
]);
-module.exports.ReadOnlyBatchError = makeError('v.io/syncbase/v23/services/syncbase/nosql.ReadOnlyBatch', actions.NO_RETRY, {
+module.exports.ReadOnlyBatchError = makeError('v.io/v23/services/syncbase/nosql.ReadOnlyBatch', actions.NO_RETRY, {
'en': '{1:}{2:} batch is read-only',
}, [
]);
-module.exports.ConcurrentBatchError = makeError('v.io/syncbase/v23/services/syncbase/nosql.ConcurrentBatch', actions.NO_RETRY, {
+module.exports.ConcurrentBatchError = makeError('v.io/v23/services/syncbase/nosql.ConcurrentBatch', actions.NO_RETRY, {
'en': '{1:}{2:} concurrent batch',
}, [
]);
-module.exports.SchemaVersionMismatchError = makeError('v.io/syncbase/v23/services/syncbase/nosql.SchemaVersionMismatch', actions.NO_RETRY, {
+module.exports.SchemaVersionMismatchError = makeError('v.io/v23/services/syncbase/nosql.SchemaVersionMismatch', actions.NO_RETRY, {
'en': '{1:}{2:} actual schema version does not match the provided one',
}, [
]);
-module.exports.BlobNotCommittedError = makeError('v.io/syncbase/v23/services/syncbase/nosql.BlobNotCommitted', actions.NO_RETRY, {
+module.exports.BlobNotCommittedError = makeError('v.io/v23/services/syncbase/nosql.BlobNotCommitted', actions.NO_RETRY, {
'en': '{1:}{2:} blob is not yet committed',
}, [
]);
@@ -215,7 +298,7 @@
DatabaseWatcher.prototype._serviceDescription = {
name: 'DatabaseWatcher',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// DatabaseWatcher allows a client to watch for updates in the database.\n// For each watched request, the client will receive a reliable stream of watch\n// events without re-ordering. See watch.GlobWatcher for a detailed explanation\n// of the behavior.\n// TODO(rogulenko): Currently the only supported watch patterns are\n// 'table/row*'. Consider changing that.\n//\n// The watching is done by starting a streaming RPC. The argument to the RPC\n// contains the ResumeMarker that points to a particular place in the database\n// event log. The result stream consists of a never-ending sequence of Change\n// messages (until the call fails or is canceled). Each Change contains the\n// Name field in the form \"<tableName>/<rowKey>\" and the Value field of the\n// StoreChange type. If the client has no access to a row specified in a change,\n// that change is excluded from the result stream.\n//\n// The DatabaseWatcher is designed to be used in the following way:\n// 1) begin a read-only batch\n// 2) read all information your app needs\n// 3) read the ResumeMarker\n// 4) abort the batch\n// 5) start watching changes to the data using the ResumeMarker\n// In this configuration the client doesn't miss any changes.",
embeds: [{
name: 'GlobWatcher',
@@ -319,7 +402,7 @@
SyncGroupManager.prototype._serviceDescription = {
name: 'SyncGroupManager',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// SyncGroupManager is the interface for SyncGroup operations.\n// TODO(hpucha): Add blessings to create/join and add a refresh method.",
embeds: [],
methods: [
@@ -581,7 +664,7 @@
BlobManager.prototype._serviceDescription = {
name: 'BlobManager',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// BlobManager is the interface for blob operations.",
embeds: [],
methods: [
@@ -589,7 +672,7 @@
{
name: 'CreateBlob',
- doc: "// API for resumable blob creation (append-only). After commit, a blob\n// is immutable. Before commit, the BlobRef can be used with PutBlob,\n// GetBlobSize, DeleteBlob, and CommitBlob.\n//\n// CreateBlob returns a BlobRef for a newly created blob.",
+ doc: "// API for resumable blob creation (append-only). After commit, a blob\n// is immutable. Before commit, the BlobRef can be used with PutBlob,\n// GetBlobSize, DeleteBlob, and CommitBlob. After commit, PutBlob and\n// CommitBlob can no longer be used. Blob creation can be resumed by\n// obtaining the current blob size with GetBlobSize and appending to the\n// blob via PutBlob.\n//\n// CreateBlob returns a BlobRef for a newly created blob.",
inArgs: [],
outArgs: [{
name: 'br',
@@ -801,7 +884,7 @@
SchemaManager.prototype._serviceDescription = {
name: 'SchemaManager',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// SchemaManager implements the API for managing schema metadata attached\n// to a Database.",
embeds: [],
methods: [
@@ -843,6 +926,48 @@
+function ConflictManager(){}
+module.exports.ConflictManager = ConflictManager;
+
+
+
+ConflictManager.prototype.startConflictResolver = function(ctx, serverCall) {
+ throw new Error('Method StartConflictResolver not implemented');
+};
+
+
+
+ConflictManager.prototype._serviceDescription = {
+ name: 'ConflictManager',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
+ doc: "// ConflictManager interface provides all the methods necessary to handle\n// conflict resolution for a given database.",
+ embeds: [],
+ methods: [
+
+
+ {
+ name: 'StartConflictResolver',
+ doc: "// StartConflictResolver registers a resolver for the database that is\n// associated with this ConflictManager and creates a stream to receive\n// conflicts and send resolutions.\n// Batches of ConflictInfos will be sent over with the Continued field\n// within the ConflictInfo representing the batch boundary. Client must\n// respond with a batch of ResolutionInfos in the same fashion.\n// A key is under conflict if two different values were written to it\n// concurrently (in logical time), i.e. neither value is an ancestor of the\n// other in the history graph.\n// A key under conflict can be a part of a batch committed on local or\n// remote or both syncbases. ConflictInfos for all keys in these two batches\n// are grouped together. These keys may themselves be under conflict; the\n// presented batch is a transitive closure of all batches containing keys\n// under conflict.\n// For example, for local batch {key1, key2} and remote batch {key1, key3},\n// the batch sent for conflict resolution will be {key1, key2, key3}.\n// If there was another concurrent batch {key2, key4}, then the batch sent\n// for conflict resolution will be {key1, key2, key3, key4}.",
+ inArgs: [],
+ outArgs: [],
+ inStream: {
+ name: '',
+ doc: '',
+ type: _typeResolutionInfo
+ },
+ outStream: {
+ name: '',
+ doc: '',
+ type: _typeConflictInfo
+ },
+ tags: [canonicalize.reduce(new access.Tag("Write", true), new access.Tag()._type), ]
+ },
+
+ ]
+};
+
+
+
function Database(){}
module.exports.Database = Database;
@@ -1006,12 +1131,17 @@
Database.prototype.setSchemaMetadata = function(ctx, serverCall, metadata) {
throw new Error('Method SetSchemaMetadata not implemented');
};
+
+
+Database.prototype.startConflictResolver = function(ctx, serverCall) {
+ throw new Error('Method StartConflictResolver not implemented');
+};
Database.prototype._serviceDescription = {
name: 'Database',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// Database represents a collection of Tables. Batches, queries, sync, watch,\n// etc. all operate at the Database level.\n// Database.Glob operates over Table names.\n// Param schemaVersion is the version number that the client expects the database\n// to be at. To disable schema version checking, pass -1.\n//\n// TODO(sadovsky): Add Watch method.",
embeds: [{
name: 'Object',
@@ -1020,24 +1150,29 @@
},
{
name: 'DatabaseWatcher',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// DatabaseWatcher allows a client to watch for updates in the database.\n// For each watched request, the client will receive a reliable stream of watch\n// events without re-ordering. See watch.GlobWatcher for a detailed explanation\n// of the behavior.\n// TODO(rogulenko): Currently the only supported watch patterns are\n// 'table/row*'. Consider changing that.\n//\n// The watching is done by starting a streaming RPC. The argument to the RPC\n// contains the ResumeMarker that points to a particular place in the database\n// event log. The result stream consists of a never-ending sequence of Change\n// messages (until the call fails or is canceled). Each Change contains the\n// Name field in the form \"<tableName>/<rowKey>\" and the Value field of the\n// StoreChange type. If the client has no access to a row specified in a change,\n// that change is excluded from the result stream.\n//\n// The DatabaseWatcher is designed to be used in the following way:\n// 1) begin a read-only batch\n// 2) read all information your app needs\n// 3) read the ResumeMarker\n// 4) abort the batch\n// 5) start watching changes to the data using the ResumeMarker\n// In this configuration the client doesn't miss any changes."
},
{
name: 'SyncGroupManager',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// SyncGroupManager is the interface for SyncGroup operations.\n// TODO(hpucha): Add blessings to create/join and add a refresh method."
},
{
name: 'BlobManager',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// BlobManager is the interface for blob operations."
},
{
name: 'SchemaManager',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// SchemaManager implements the API for managing schema metadata attached\n// to a Database."
},
+ {
+ name: 'ConflictManager',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
+ doc: "// ConflictManager interface provides all the methods necessary to handle\n// conflict resolution for a given database."
+ },
],
methods: [
@@ -1048,7 +1183,7 @@
inArgs: [{
name: 'metadata',
doc: "",
- type: _type5
+ type: _type7
},
{
name: 'perms',
@@ -1119,7 +1254,7 @@
outStream: {
name: '',
doc: '',
- type: _type6
+ type: _type8
},
tags: [canonicalize.reduce(new access.Tag("Read", true), new access.Tag()._type), ]
},
@@ -1457,7 +1592,7 @@
{
name: 'CreateBlob',
- doc: "// API for resumable blob creation (append-only). After commit, a blob\n// is immutable. Before commit, the BlobRef can be used with PutBlob,\n// GetBlobSize, DeleteBlob, and CommitBlob.\n//\n// CreateBlob returns a BlobRef for a newly created blob.",
+ doc: "// API for resumable blob creation (append-only). After commit, a blob\n// is immutable. Before commit, the BlobRef can be used with PutBlob,\n// GetBlobSize, DeleteBlob, and CommitBlob. After commit, PutBlob and\n// CommitBlob can no longer be used. Blob creation can be resumed by\n// obtaining the current blob size with GetBlobSize and appending to the\n// blob via PutBlob.\n//\n// CreateBlob returns a BlobRef for a newly created blob.",
inArgs: [],
outArgs: [{
name: 'br',
@@ -1677,6 +1812,25 @@
outStream: null,
tags: [canonicalize.reduce(new access.Tag("Write", true), new access.Tag()._type), ]
},
+
+
+ {
+ name: 'StartConflictResolver',
+ doc: "// StartConflictResolver registers a resolver for the database that is\n// associated with this ConflictManager and creates a stream to receive\n// conflicts and send resolutions.\n// Batches of ConflictInfos will be sent over with the Continued field\n// within the ConflictInfo representing the batch boundary. Client must\n// respond with a batch of ResolutionInfos in the same fashion.\n// A key is under conflict if two different values were written to it\n// concurrently (in logical time), i.e. neither value is an ancestor of the\n// other in the history graph.\n// A key under conflict can be a part of a batch committed on local or\n// remote or both syncbases. ConflictInfos for all keys in these two batches\n// are grouped together. These keys may themselves be under conflict; the\n// presented batch is a transitive closure of all batches containing keys\n// under conflict.\n// For example, for local batch {key1, key2} and remote batch {key1, key3},\n// the batch sent for conflict resolution will be {key1, key2, key3}.\n// If there was another concurrent batch {key2, key4}, then the batch sent\n// for conflict resolution will be {key1, key2, key3, key4}.",
+ inArgs: [],
+ outArgs: [],
+ inStream: {
+ name: '',
+ doc: '',
+ type: _typeResolutionInfo
+ },
+ outStream: {
+ name: '',
+ doc: '',
+ type: _typeConflictInfo
+ },
+ tags: [canonicalize.reduce(new access.Tag("Write", true), new access.Tag()._type), ]
+ },
]
};
@@ -1731,7 +1885,7 @@
Table.prototype._serviceDescription = {
name: 'Table',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// Table represents a collection of Rows.\n// Table.Glob operates over the primary keys of Rows in the Table.\n// SchemaVersion is the version number that the client expects the database\n// to be at. To disable schema version checking, pass -1.",
embeds: [],
methods: [
@@ -1868,7 +2022,7 @@
outArgs: [{
name: '',
doc: "",
- type: _type7
+ type: _type9
},
],
inStream: null,
@@ -1956,7 +2110,7 @@
Row.prototype._serviceDescription = {
name: 'Row',
- pkgPath: 'v.io/syncbase/v23/services/syncbase/nosql',
+ pkgPath: 'v.io/v23/services/syncbase/nosql',
doc: "// Row represents a single row in a Table.\n// All access checks are performed against the most specific matching prefix\n// permissions in the Table.\n// SchemaVersion is the version number that the client expects the database\n// to be at. To disable schema version checking, pass -1.\n// NOTE(sadovsky): Currently we send []byte values over the wire for Get, Put,\n// and Scan. If there's a way to avoid encoding/decoding on the server side, we\n// can use vdl.Value everywhere without sacrificing performance.",
embeds: [],
methods: [
diff --git a/src/nosql/database.js b/src/nosql/database.js
index ce2c35f..99e4bb6 100644
--- a/src/nosql/database.js
+++ b/src/nosql/database.js
@@ -11,7 +11,7 @@
var unwrap = require('vanadium/src/vdl/type-util').unwrap;
var verror = vanadium.verror;
-var nosqlVdl = require('../gen-vdl/v.io/syncbase/v23/services/syncbase/nosql');
+var nosqlVdl = require('../gen-vdl/v.io/v23/services/syncbase/nosql');
var watchVdl = require('../gen-vdl/v.io/v23/services/watch');
var BatchDatabase = require('./batch-database');
diff --git a/src/nosql/index.js b/src/nosql/index.js
index 469e1ed..c14985a 100644
--- a/src/nosql/index.js
+++ b/src/nosql/index.js
@@ -5,7 +5,7 @@
var rowrange = require('./rowrange');
var runInBatch = require('./batch');
var Schema = require('./schema');
-var vdl = require('../gen-vdl/v.io/syncbase/v23/services/syncbase/nosql');
+var vdl = require('../gen-vdl/v.io/v23/services/syncbase/nosql');
var watch = require('./watch');
/**
diff --git a/src/nosql/row.js b/src/nosql/row.js
index ae679b1..2cfd4e9 100644
--- a/src/nosql/row.js
+++ b/src/nosql/row.js
@@ -4,7 +4,7 @@
var vanadium = require('vanadium');
-var nosqlVdl = require('../gen-vdl/v.io/syncbase/v23/services/syncbase/nosql');
+var nosqlVdl = require('../gen-vdl/v.io/v23/services/syncbase/nosql');
module.exports = Row;
diff --git a/src/nosql/table.js b/src/nosql/table.js
index 96a6e98..c050d14 100644
--- a/src/nosql/table.js
+++ b/src/nosql/table.js
@@ -5,7 +5,7 @@
var through2 = require('through2');
var vanadium = require('vanadium');
-var nosqlVdl = require('../gen-vdl/v.io/syncbase/v23/services/syncbase/nosql');
+var nosqlVdl = require('../gen-vdl/v.io/v23/services/syncbase/nosql');
var prefix = require('./rowrange').prefix;
var Row = require('./row');
@@ -169,7 +169,7 @@
* SetPermissions will fail if called with a prefix that does not match any
* rows.
* @param {module:vanadium.context.Context} ctx Vanadium context.
- * @param {module:syncbase.nosql.rowrane.PrefixRange|string} prefix Prefix or
+ * @param {module:syncbase.nosql.rowrange.PrefixRange|string} prefix Prefix or
* PrefixRange.
* @param @param {module:vanadium.security.access.Permissions} perms Permissions
* for the rows matching the prefix.
diff --git a/src/service.js b/src/service.js
index a8c61c1..df9bf7b 100644
--- a/src/service.js
+++ b/src/service.js
@@ -6,7 +6,7 @@
var App = require('./app');
var util = require('./util');
-var vdl = require('./gen-vdl/v.io/syncbase/v23/services/syncbase');
+var vdl = require('./gen-vdl/v.io/v23/services/syncbase');
// TODO(aghassemi): This looks clunky,
// https://github.com/vanadium/issues/issues/499 to deal with it.
diff --git a/test/integration/test-blob.js b/test/integration/test-blob.js
index d1aee34..56532d0 100644
--- a/test/integration/test-blob.js
+++ b/test/integration/test-blob.js
@@ -11,7 +11,7 @@
var Blob = require('../../src/nosql/blob');
/* jshint +W079 */
var vdl =
- require('../../src/gen-vdl/v.io/syncbase/v23/services/syncbase/nosql');
+ require('../../src/gen-vdl/v.io/v23/services/syncbase/nosql');
var testUtil = require('./util');
var setupDatabase = testUtil.setupDatabase;