Validate replication documents added to the replicator database
---------------------------------------------------------------

                 Key: COUCHDB-1088
                 URL: https://issues.apache.org/jira/browse/COUCHDB-1088
             Project: CouchDB
          Issue Type: Improvement
          Components: Replication
    Affects Versions: 1.1
            Reporter: Filipe Manana
            Assignee: Filipe Manana


Currently we don't validate the replication documents added to the replicator 
database - we don't check if mandatory fields (source and target) are present 
and if they have the right type (string or object). We also don't check if 
optional fields, like "continuous" or "create_target", have the right type - 
for example, often users specify the string "true" as the value for those 2 
fields when it should be a boolean.

The following patch adds some basic validation to the _replicator database 
default document validation function. Besides throwing meaningful error 
messages to the user, it also adds nice information in the log like for e.g.:

[info] [<0.3938.0>] OS Process #Port<0.35369> Log :: Error writing document 
`rep1' to the replicator database: The `source' property must exist and be 
either a string or an object.
[info] [<0.3887.0>] 127.0.0.1 - - PUT /test_suite_rep_db/rep1 403
[info] [<0.3938.0>] OS Process #Port<0.35369> Log :: Error writing document 
`rep1' to the replicator database: The `continuous' field must be a boolean.
[info] [<0.3887.0>] 127.0.0.1 - - PUT /test_suite_rep_db/rep1 403
[info] [<0.3938.0>] OS Process #Port<0.35369> Log :: Error writing document 
`rep1' to the replicator database: The `filter' field must be a non-empty 
string.


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to