Ok. I really missed that functionality for NoSQL backends, I suppose my change can even break compatibility with apps implementing debugging features relying in defaults, so I agree with the revert.
We should not change _<something> behavior. NoSQL adapters should always use defaults for consistency
Now for non rdbms, sometimes you need to pre-process the db command input so the adapter returns the resulting row data without applying changes to the backend. Both for debugging purposes and for use cases like the one detailed in
https://groups.google.com/d/msg/web2py/lFKiIGary0c/xv4fcCz8DvMJAFAIK the current api does not support this, with the exception of the wrong implementations in gae (reverted), imap and mongodb.
Then we could add support for pre-processing db commands in dal by adding methods with different naming or else leave the feature to ad-hoc external implementations.