You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@couchdb.apache.org by GitBox <gi...@apache.org> on 2020/03/28 18:45:34 UTC

[GitHub] [couchdb] jaydoane opened a new pull request #2729: Don't advertise unimplemented features

jaydoane opened a new pull request #2729: Don't advertise unimplemented features
URL: https://github.com/apache/couchdb/pull/2729
 
 
   
   <!-- Thank you for your contribution!
   
        Please file this form by replacing the Markdown comments
        with your text. If a section needs no action - remove it.
   
        Also remember, that CouchDB uses the Review-Then-Commit (RTC) model
        of code collaboration. Positive feedback is represented +1 from committers
        and negative is a -1. The -1 also means veto, and needs to be addressed
        to proceed. Once there are no objections, the PR can be merged by a
        CouchDB committer.
   
        See: http://couchdb.apache.org/bylaws.html#decisions for more info. -->
   
   ## Overview
   
   Removes the following features from the welcome message:
   - reshard
   - partitioned
   - pluggable-storage-engines
   - access-ready
   - scheduler
   
   <!-- Please give a short brief for the pull request,
        what problem it solves or how it makes things better. -->
   
   ## Testing recommendations
   
   ```
   make check-fdb
   ```
   <!-- Describe how we can test your changes.
        Does it provides any behaviour that the end users
        could notice? -->
   
   ## Related Issues or Pull Requests
   
   <!-- If your changes affects multiple components in different
        repositories please put links to those issues or pull requests here.  -->
   
   ## Checklist
   
   - [x] Code is written and works correctly
   - [x] Changes are covered by tests
   - [ ] Any new configurable parameters are documented in `rel/overlay/etc/default.ini`
   - [ ] A PR for documentation changes has been made in https://github.com/apache/couchdb-documentation
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [couchdb] jaydoane merged pull request #2729: Don't advertise unimplemented features

Posted by GitBox <gi...@apache.org>.
jaydoane merged pull request #2729: Don't advertise unimplemented features
URL: https://github.com/apache/couchdb/pull/2729
 
 
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [couchdb] jaydoane commented on a change in pull request #2729: Don't advertise unimplemented features

Posted by GitBox <gi...@apache.org>.
jaydoane commented on a change in pull request #2729: Don't advertise unimplemented features
URL: https://github.com/apache/couchdb/pull/2729#discussion_r399705876
 
 

 ##########
 File path: rel/overlay/etc/vm.args
 ##########
 @@ -60,3 +60,6 @@
 
 # Set maximum SSL session lifetime to reap terminated replication readers
 -ssl session_lifetime 300
+
+# reshard unsupported on FDB
+-mem3 reshard_disabled true
 
 Review comment:
   Done.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [couchdb] jaydoane commented on a change in pull request #2729: Don't advertise unimplemented features

Posted by GitBox <gi...@apache.org>.
jaydoane commented on a change in pull request #2729: Don't advertise unimplemented features
URL: https://github.com/apache/couchdb/pull/2729#discussion_r399705916
 
 

 ##########
 File path: src/couch/src/couch_server.erl
 ##########
 @@ -238,13 +238,16 @@ init([]) ->
     couch_util:set_process_priority(?MODULE, high),
 
     % Mark pluggable storage engines as a supported feature
-    config:enable_feature('pluggable-storage-engines'),
+    % Not implemented on FDB
+    % config:enable_feature('pluggable-storage-engines'),
 
     % Mark partitioned databases as a supported feature
-    config:enable_feature(partitioned),
+    % Not implemented on FDB
+    % config:enable_feature(partitioned),
 
     % Mark being able to receive documents with an _access property as a supported feature
-    config:enable_feature('access-ready'),
 
 Review comment:
   Updated.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [couchdb] nickva commented on a change in pull request #2729: Don't advertise unimplemented features

Posted by GitBox <gi...@apache.org>.
nickva commented on a change in pull request #2729: Don't advertise unimplemented features
URL: https://github.com/apache/couchdb/pull/2729#discussion_r399697472
 
 

 ##########
 File path: src/couch/src/couch_server.erl
 ##########
 @@ -238,13 +238,16 @@ init([]) ->
     couch_util:set_process_priority(?MODULE, high),
 
     % Mark pluggable storage engines as a supported feature
-    config:enable_feature('pluggable-storage-engines'),
+    % Not implemented on FDB
+    % config:enable_feature('pluggable-storage-engines'),
 
     % Mark partitioned databases as a supported feature
-    config:enable_feature(partitioned),
+    % Not implemented on FDB
+    % config:enable_feature(partitioned),
 
     % Mark being able to receive documents with an _access property as a supported feature
-    config:enable_feature('access-ready'),
 
 Review comment:
   We are _access ready technically so let's keep this one enabled. Though couch_server is probably the wrong place for it. We'd want it in fabric2_server eventually or other such place.
   
   https://github.com/apache/couchdb/blob/prototype/fdb-layer/src/couch/src/couch_doc.erl#L304

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [couchdb] nickva commented on a change in pull request #2729: Don't advertise unimplemented features

Posted by GitBox <gi...@apache.org>.
nickva commented on a change in pull request #2729: Don't advertise unimplemented features
URL: https://github.com/apache/couchdb/pull/2729#discussion_r399696923
 
 

 ##########
 File path: rel/overlay/etc/vm.args
 ##########
 @@ -60,3 +60,6 @@
 
 # Set maximum SSL session lifetime to reap terminated replication readers
 -ssl session_lifetime 300
+
+# reshard unsupported on FDB
+-mem3 reshard_disabled true
 
 Review comment:
   Users customize vm.args and use their own so this might not work for them. Let's handle it in the place in the code where were we set this future:
    
    https://github.com/apache/couchdb/blob/prototype/fdb-layer/src/mem3/src/mem3_reshard.erl#L219

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [couchdb] jaydoane commented on issue #2729: Don't advertise unimplemented features

Posted by GitBox <gi...@apache.org>.
jaydoane commented on issue #2729: Don't advertise unimplemented features
URL: https://github.com/apache/couchdb/pull/2729#issuecomment-605528437
 
 
   > Also perhaps instead of commenting those out we just remove the feature set lines. Except for scheduler since we intend to bring it back.
   > 
   > Another crazy idea is to not start couch_server at all. I am guessing this will breaking a whole bunch of things that try to open system databases and such but if you're curious and want to see what happens that will auto-magically disable all these features. If that works we would want to move access-ready to another place then.
   
   I commented out the couch_server child spec in couch_primary_sup.erl, but couch layer failed to start:
   
   ```erlang
   {"init terminating in do_boot",{{error,{{shutdown,{failed_to_start_child,mem3_nodes,{badarg,[{ets,lookup,[couch_dbs_locks,<<"_nodes">>],[]},{couch_server,validate_open_or_create,2,[{file,"src/couch_server.erl"},{line,711}]},{couch_server,open,2,[{file,"src/couch_server.erl"},{line,83}]},{couch_db,open,2,[{file,"src/couch_db.erl"},{line,160}]},{mem3_util,ensure_exists,1,[{file,"src/mem3_util.erl"},{line,270}]},{mem3_nodes,initialize_nodelist,0,[{file,"src/mem3_nodes.erl"},{line,94}]},{mem3_nodes,init,1,[{file,"src/mem3_nodes.erl"},{line,45}]},{gen_server,init_it,2,[{file,"gen_server.erl"},{line,374}]}]}}},{mem3_app,start,[normal,[]]}}},[{boot_node,start_app,3,[{file,"dev/boot_node.erl"},{line,146}]},{lists,foldl,3,[{file,"lists.erl"},{line,1263}]},{boot_node,start_app,3,[{file,"dev/boot_node.erl"},{line,136}]},{lists,foldl,3,[{file,"lists.erl"},{line,1263}]},{boot_node,start_app,3,[{file,"dev/boot_node.erl"},{line,136}]},{lists,foldl,3,[{file,"lists.erl"},{line,1263}]},{boot_node,start_app,3,[{file,"dev/boot_node.erl"},{line,136}]},{lists,foldl,3,[{file,"lists.erl"},{line,1263}]}]}}
   ```
   
   I think it's going to probably require a bit more work to turn it off, which I presume is out of scope for this commit.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [couchdb] nickva commented on issue #2729: Don't advertise unimplemented features

Posted by GitBox <gi...@apache.org>.
nickva commented on issue #2729: Don't advertise unimplemented features
URL: https://github.com/apache/couchdb/pull/2729#issuecomment-605506570
 
 
   Also perhaps instead of commenting those out we just remove the feature set lines. Except for scheduler since we intend to bring it back.
   
   Another crazy idea is to not start couch_server at all. I am guessing this will breaking a whole bunch of things that try to open system databases and such but if you're curious and want to see what happens that will auto-magically disable all these features. If that works we would want to move access-ready to another place then. 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services