Changeset 523 for Dev


Ignore:
Timestamp:
03/17/14 22:14:12 (11 years ago)
Author:
hendrikvanantwerpen
Message:
  • Added version for views.
  • Don't automatically upgrade views when starting app, this needs to be done manually.
Location:
Dev/trunk/src/server
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • Dev/trunk/src/server/app.js

    r519 r523  
    1212  , etags = require("./util/etags")
    1313  , cryptoken = require('./util/crypto-token')
     14  , Q = require('q')
    1415  ;
    1516
     
    2223   
    2324    var schema = require("./config/couchdb-schema.json");
    24     return couch.get("schemaInfo").then(function(schemaInfo){
    25         if (schemaInfo.version !== schema.version) {
    26             var msg =  "Database has version "+schemaInfo.version+" but we expect version "+schema.version;
    27             throw new Error(msg);
     25    var views = require("./config/couchdb-design-docs.js");
     26    return couch.get("schemaInfo")
     27    .then(function(schemaInfo){
     28        if ( schemaInfo.version !== schema.version ) {
     29            return Q.reject(new Error("Found schema version "+schemaInfo.version+
     30                                      ", expected "+schema.version));
     31        } else if ( schemaInfo.viewsVersion !== views.schemaInfo.viewsVersion ) {
     32            return Q.reject(new Error("Found views version "+schemaInfo.viewsVersion+
     33                                      ", expected "+views.schemaInfo.viewsVersion));
     34        } else {
     35            return configureApp(env,couch,schema);
    2836        }
    29         return configureApp(env,couch,schema);
    3037    });
    3138
  • Dev/trunk/src/server/bin/heroku.js

    r519 r523  
    44  ;
    55
    6 console.log("Running on",env.couchServerURL+env.dbName);
     6console.log("Using CouchDB on",env.couchServerURL+env.dbName);
    77
    88require('../app').App(env)
    99.then(function(app){
    10     configCouch(env.couchServerURL,env.dbName,designDocs);
    11     return app;
    12 }).then(function(app){
    1310    app.listen(env.port, function() {
    1411        console.log('Listening on port',env.port);
  • Dev/trunk/src/server/config/couchdb-design-docs.js

    r519 r523  
    33    "schemaInfo": {
    44        _id: "schemaInfo",
    5         version: "4"
     5        version: "4",
     6        viewsVersion: "1"
    67    },
    78
  • Dev/trunk/src/server/config/couchdb-schema.json

    r511 r523  
    1616          "_id": { "type": "string", "pattern": "^schemaInfo$" },
    1717          "_rev": { "$ref": "#/definitions/nonEmptyString" },
    18           "version": { "$ref": "#/definitions/nonEmptyString" }
     18          "version": { "$ref": "#/definitions/nonEmptyString" },
     19          "viewsVersion": { "$ref": "#/definitions/nonEmptyString" }
    1920      },
    2021      "required": ["_id","version"],
Note: See TracChangeset for help on using the changeset viewer.