Extract Protocol Buffers interface from KV#321
Conversation
|
Editorial comment: really awesome to see the monstrosity of |
|
What about some lager output here in the case that a user is upgrading and uses an old config. I actually did just that and the error when the |
There was a problem hiding this comment.
Is it worth a comment here indicating that this is a generated file to avoid any confusion? I'm not certain it is, just a thought.
There was a problem hiding this comment.
In the past we haven't, but the deps should work out so that the header is generated before riak_kv is compiled.
|
Is it just me, or did the |
|
@rzezeski It has moved to riak_api. |
There was a problem hiding this comment.
Maybe call this decode_vc to be more consistent with other changes? (and pbify_rpbvc to encode_vc)
|
I see a lot of failures with the Java client integration tests on a devrel. The entries in the crash.log aren't helping much as they just show the incoming message and |
|
I discovered what the problem is after tracing at debug level on the |
|
The new |
|
@rzezeski Early feedback from @jonmeredith indicated that a frequently failing client would spam the logs, hence the level was lowered to debug from info. Also, the client should receive the error message in an rpberrorresp, although i admit it's not as useful as a full backtrace. Again, the desire here is to warn the client before stopping abruptly so the error can at least go through the client error handling logic. |
|
The problem is that what is returned to the client is useless. Either the stack needs to be formatted with it or we need to change from debug->error (it's an error, lets log it as one). |
|
I've reviewed this code, compiled it, ran unit tests, and most of the Java client integration tests are running. I'm going to merge this in master so that it builds again and file issues for remaining failures. |
* riak_kv_pb_bucket serves get/set bucket, list-keys and list-buckets * riak_kv_pb_object serves get/set client ID, get, put, and delete * riak_kv_pb_mapred serves MapReduce
This is part of a series of pull-requests to extract the Protocol Buffers interface from riak_kv and make it available to all applications in an unobtrusive manner.
Related: basho/riak#138
This pull-request extracts
riak_kv_pb_socketfunctionality into 3 individual services implementing theriak_api_pb_servicebehaviour --riak_kv_pb_object,riak_kv_pb_bucket, andriak_kv_pb_mapred. The "ping" and "server_info" requests were moved to theriak_apiapplication.Additionally, review of the
riak_apiapplication and its design is requested.