Couchdb and File store problem


#1

I’m migrating my meteor app from Mongo.Collections to CouchDB. And I ran into problem where, if my package uses CouchDB and File storage, it gives ERROR:

W20160712-10:48:12.448(3)? (STDERR) Error: Only lowercase letters (a-z), digits (0-9), and any of the characters _, $, (, ), +, -, and / are allowed. Moreover, the database name must begin with a letter.

W20160712-10:48:12.449(3)? (STDERR) at Request._callback (/packages/couchdb1/.npm/package/node_modules/nano/lib/nano.js:234:15)

W20160712-10:48:12.449(3)? (STDERR) at Request.self.callback (/packages/couchdb1/.npm/package/node_modules/request/request.js:201:22)

W20160712-10:48:12.449(3)? (STDERR) at Request.emit (events.js:98:17) W20160712-10:48:12.449(3)? (STDERR) at Request. (/packages/couchdb1/.npm/package/node_modules/request/request.js:1069:10)

W20160712-10:48:12.449(3)? (STDERR) at Request.emit (events.js:117:20) W20160712-10:48:12.449(3)? (STDERR) at IncomingMessage. (/packages/couchdb1/.npm/package/node_modules/request/request.js:989:12)

W20160712-10:48:12.450(3)? (STDERR) at IncomingMessage.emit (events.js:117:20) W20160712-10:48:12.450(3)? (STDERR) at _stream_readable.js:944:16 W20160712-10:48:12.451(3)? (STDERR) at process._tickCallback (node.js:458:13)

Note that so far I’m not even creating any new databases on couchdb, like so:
export const Some = new CouchDB.Database('something');
The only thing that is being created is FS.Collection, like so:

export const DatasourceFiles = new FS.Collection('datasource-files', {
    stores: [DataSourceFileStore]
})

The api.use looks like this:
api.use(['cloudant:couchd', 'mdg:validated-method','aldeed:simple-schema@1.5.3', 'script-runner', 'cfs:standard-packages', 'cfs:gridfs@0.0.33', 'aldeed:collection2@2.9.1', 'linqjs']);

So the problem is caused by FS, for some reason it automatically tries to use couchdb. Is there anyway to fix this? Maybe a package?


#2

GridFS definitely creates collections with names that break the CouchDB naming requirements, so I think you’re on to something. Just to verify - does it work properly if you disable your Collection FS based code?

Sounds like an issue with the cloudant:couchdb package. Maybe try opening a new issue.


#3

Yes, in another package uses only clouchdb and exports databes, and it works.