[kudu-CR] Fix kudu-ts-cli crash when there is no data in tablet

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has posted comments on this change.

Change subject: Fix kudu-ts-cli crash when there is no data in tablet
..


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4134/2/src/kudu/tools/ts-cli.cc
File src/kudu/tools/ts-cli.cc:

Line 278:   break;
> Todd, is this true for a scan without any filters ? doesn't 'ts-cli dump_ta
yea, even without filters, you could have a bunch of deleted rows, and it's 
possible to "return early" after only reading batches of deleted rows. You can 
think of every scanner as having an implicit filter which performs deletion 
(and MVCC, more generally)


-- 
To view, visit http://gerrit.cloudera.org:8080/4134
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Alexey Serbin 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Dinesh Bhat 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] Fix kudu-ts-cli crash when there is no data in tablet

2016-08-28 Thread Dinesh Bhat (Code Review)
Dinesh Bhat has posted comments on this change.

Change subject: Fix kudu-ts-cli crash when there is no data in tablet
..


Patch Set 4:

(5 comments)

TFTR Alexey/Todd, please see response inlined.

http://gerrit.cloudera.org:8080/#/c/4134/2/src/kudu/tools/ts-cli.cc
File src/kudu/tools/ts-cli.cc:

Line 265:   do {
> Consider moving this into the scope of the while() loop -- there there will
Done


Line 266: RpcController rpc;
> Style nit: consider re-writing the cycle like
Done


Line 277:   break;
> style nit: consider having the closure brackets for the if().  It's good fo
Done


Line 278: }
> What if the response has more results?  I.e., is it guaranteed that if !has
Good point, a quick look at TabletServiceImpl::Scan tells me that Scan could 
result in an empty batch, but my guess was that that could happen if 
predicate-filters were specified. For a sequential scan like the one generated 
here, I thought empty data means end of tablet.


Line 278: }
> nope, that's not guaranteed - you can get an empty batch in the "middle" of
Todd, is this true for a scan without any filters ? doesn't 'ts-cli dump_tablet 
' output everything sequentially ? which means empty batch may mean 
end-of-results ? I changed current logic to !has_data && !has_more_results if 
that sounds more accurate.


-- 
To view, visit http://gerrit.cloudera.org:8080/4134
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
Gerrit-PatchSet: 4
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Alexey Serbin 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Dinesh Bhat 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] Fix kudu-ts-cli crash when there is no data in tablet

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: Fix kudu-ts-cli crash when there is no data in tablet
..


Patch Set 4:

Build Started http://104.196.14.100/job/kudu-gerrit/3127/

-- 
To view, visit http://gerrit.cloudera.org:8080/4134
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
Gerrit-PatchSet: 4
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Alexey Serbin 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] Fix kudu-ts-cli crash when there is no data in tablet

2016-08-28 Thread Dinesh Bhat (Code Review)
Hello Dan Burkert, Todd Lipcon, Alexey Serbin, Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/4134

to look at the new patch set (#4).

Change subject: Fix kudu-ts-cli crash when there is no data in tablet
..

Fix kudu-ts-cli crash when there is no data in tablet

NULL pointer was being sent in as an argument to
RowwiseRowBlockPB::Swap routine, fixing the callsite here.

./bin/kudu-ts-cli dump_tablet f32f6e0b1f354643b6b030599a359fa6 
--server_address=127.108.26.1:33958
previously segfaulted to:

$0  0x009c9867 in std::swap (__a=@0x7ffc75c76af8, __b=@0x18) at 
/opt/rh/devtoolset-3/root/usr/include/c++/4.9.2/bits/move.h:176
$1  0x00b5bf1f in kudu::RowwiseRowBlockPB::Swap (this=0x7ffc75c76ae0, 
other=0x0) at 
/data/10/dinesh/kudu/build/debug/src/kudu/common/wire_protocol.pb.cc:1916
$2  0x0085de72 in kudu::client::KuduScanBatch::Data::Reset 
(this=0x7ffc75c76a80, controller=0x7ffc75c76a20, projection=0x7ffc75c76b40, 
client_projection=0x7ffc75c76ca0, data=...) at 
/data/10/dinesh/kudu/src/kudu/client/scanner-internal.cc:484
$3  0x0084d5d9 in kudu::tools::TsAdminClient::DumpTablet 
(this=0x7ffc75c76e20, tablet_id="1f7a6bd64c604f7fada909bd575708cd") at 
/data/10/dinesh/kudu/src/kudu/tools/ts-cli.cc:278
$4  0x0084f4bd in kudu::tools::TsCliMain (argc=3, argv=0x7ffc75c773f0) 
at /data/10/dinesh/kudu/src/kudu/tools/ts-cli.cc:455
$5  0x00850079 in main (argc=4, argv=0x7ffc75c773e8) at 
/data/10/dinesh/kudu/src/kudu/tools/ts-cli.cc:492

Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
---
M src/kudu/tools/ts-cli.cc
1 file changed, 8 insertions(+), 7 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/34/4134/4
-- 
To view, visit http://gerrit.cloudera.org:8080/4134
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
Gerrit-PatchSet: 4
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Alexey Serbin 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] Fix kudu-ts-cli crash when there is no data in tablet

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: Fix kudu-ts-cli crash when there is no data in tablet
..


Patch Set 3:

Build Started http://104.196.14.100/job/kudu-gerrit/3126/

-- 
To view, visit http://gerrit.cloudera.org:8080/4134
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Alexey Serbin 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] Fix kudu-ts-cli crash when there is no data in tablet

2016-08-28 Thread Dinesh Bhat (Code Review)
Hello Dan Burkert, Todd Lipcon, Alexey Serbin, Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/4134

to look at the new patch set (#3).

Change subject: Fix kudu-ts-cli crash when there is no data in tablet
..

Fix kudu-ts-cli crash when there is no data in tablet

NULL pointer was being sent in as an argument to
RowwiseRowBlockPB::Swap routine, fixing the callsite here.

./bin/kudu-ts-cli dump_tablet f32f6e0b1f354643b6b030599a359fa6 
--server_address=127.108.26.1:33958
previously segfaulted to:

$0  0x009c9867 in std::swap (__a=@0x7ffc75c76af8, __b=@0x18) at 
/opt/rh/devtoolset-3/root/usr/include/c++/4.9.2/bits/move.h:176
$1  0x00b5bf1f in kudu::RowwiseRowBlockPB::Swap (this=0x7ffc75c76ae0, 
other=0x0) at 
/data/10/dinesh/kudu/build/debug/src/kudu/common/wire_protocol.pb.cc:1916
$2  0x0085de72 in kudu::client::KuduScanBatch::Data::Reset 
(this=0x7ffc75c76a80, controller=0x7ffc75c76a20, projection=0x7ffc75c76b40, 
client_projection=0x7ffc75c76ca0, data=...) at 
/data/10/dinesh/kudu/src/kudu/client/scanner-internal.cc:484
$3  0x0084d5d9 in kudu::tools::TsAdminClient::DumpTablet 
(this=0x7ffc75c76e20, tablet_id="1f7a6bd64c604f7fada909bd575708cd") at 
/data/10/dinesh/kudu/src/kudu/tools/ts-cli.cc:278
$4  0x0084f4bd in kudu::tools::TsCliMain (argc=3, argv=0x7ffc75c773f0) 
at /data/10/dinesh/kudu/src/kudu/tools/ts-cli.cc:455
$5  0x00850079 in main (argc=4, argv=0x7ffc75c773e8) at 
/data/10/dinesh/kudu/src/kudu/tools/ts-cli.cc:492

Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
---
M src/kudu/common/row_operations.cc
M src/kudu/tools/ts-cli.cc
2 files changed, 10 insertions(+), 7 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/34/4134/3
-- 
To view, visit http://gerrit.cloudera.org:8080/4134
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Alexey Serbin 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] KUDU-1048 master should show versions of tservers, version summary

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has posted comments on this change.

Change subject: KUDU-1048 master should show versions of tservers, version 
summary
..


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4104/2/src/kudu/master/ts_manager.cc
File src/kudu/master/ts_manager.cc:

Line 103: if (ts->TimeSinceHeartbeat().ToMilliseconds() < 
FLAGS_tserver_unresponsive_timeout_ms) {
can you use PresumedDead here now? then you shouldn't need the DECLARE in the 
header either, since the only access to that flag would be from the 
ts_descriptor.cc


-- 
To view, visit http://gerrit.cloudera.org:8080/4104
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Idd203209e3d99292018801b94ec2904b6634854f
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Will Berkeley 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 
Gerrit-HasComments: Yes


[kudu-CR] tracing: gzip the trace JSON ajax response

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: tracing: gzip the trace JSON ajax response
..


Patch Set 1:

Build Started http://104.196.14.100/job/kudu-gerrit/3125/

-- 
To view, visit http://gerrit.cloudera.org:8080/4154
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ia8d5966e65b51576bf1460cb1ea8c2240ea88cbc
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Todd Lipcon 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-HasComments: No


[kudu-CR] tracing: gzip the trace JSON ajax response

2016-08-28 Thread Todd Lipcon (Code Review)
Hello Mike Percy,

I'd like you to do a code review.  Please visit

http://gerrit.cloudera.org:8080/4154

to review the following change.

Change subject: tracing: gzip the trace JSON ajax response
..

tracing: gzip the trace JSON ajax response

This enables gzipping of the actual trace which is sent back over HTTP
when using the tracing web page. I noticed that the traces can be quite
slow to receive, but given they often have a lot of repetitive text,
they are quite compressible.

The original Chrome implementation already did this, but I had ripped it
out for simplicity when importing the code. This simply adds it back on
the server side. A corresponding commit on the JS side adds a slight
tweak so that we can send back binary gzipped data (whereas the Chrome
version uses base64)

Change-Id: Ia8d5966e65b51576bf1460cb1ea8c2240ea88cbc
---
M src/kudu/server/tracing-path-handlers.cc
M src/kudu/tserver/tablet_server-test.cc
M thirdparty/vars.sh
3 files changed, 103 insertions(+), 11 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/54/4154/1
-- 
To view, visit http://gerrit.cloudera.org:8080/4154
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia8d5966e65b51576bf1460cb1ea8c2240ea88cbc
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Todd Lipcon 
Gerrit-Reviewer: Mike Percy 


[kudu-CR] KUDU-687: use client in ksck for master operations

2016-08-28 Thread Adar Dembo (Code Review)
Hello Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/4147

to look at the new patch set (#3).

Change subject: KUDU-687: use client in ksck for master operations
..

KUDU-687: use client in ksck for master operations

This patch modifies ksck to use the client for all master operations,
restricting direct access only for tserver operations. In doing so, ksck can
now work with multi-master clusters, retrying operations when the leader
master dies.

Interesting things of note:
- I went back and forth on what the semantics of KsckMaster::Connect() ought
  to be. At first I thought we should ping every master, but in the end I
  settled on building the client, which just verifies the existence of a
  leader master. My justification: today's ksck isn't really concerned with
  master health; the master merely provides information that is consumed
  during the real checks: of table and tablet integrity.
- I relented on commit cf009d4 and restored a MiniCluster method to find the
  leader master. It's got the same signature as the ExternalMiniCluster
  variant so that Mike's common cluster interface (a work in progress) can
  expose it.

Change-Id: Icbd6b28ea1b2c88e02cd451095e4dec94b0ebfc3
---
M src/kudu/client/schema.h
M src/kudu/integration-tests/cluster_verifier.cc
M src/kudu/integration-tests/mini_cluster.cc
M src/kudu/integration-tests/mini_cluster.h
M src/kudu/tools/CMakeLists.txt
M src/kudu/tools/ksck-test.cc
M src/kudu/tools/ksck.h
M src/kudu/tools/ksck_remote-test.cc
M src/kudu/tools/ksck_remote.cc
M src/kudu/tools/ksck_remote.h
M src/kudu/tools/tool_action_cluster.cc
11 files changed, 161 insertions(+), 164 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/47/4147/3
-- 
To view, visit http://gerrit.cloudera.org:8080/4147
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Icbd6b28ea1b2c88e02cd451095e4dec94b0ebfc3
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] KUDU-687: use client in ksck for master operations

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: KUDU-687: use client in ksck for master operations
..


Patch Set 3:

Build Started http://104.196.14.100/job/kudu-gerrit/3124/

-- 
To view, visit http://gerrit.cloudera.org:8080/4147
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Icbd6b28ea1b2c88e02cd451095e4dec94b0ebfc3
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-687: expose additional tablet metadata in C++ client

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: KUDU-687: expose additional tablet metadata in C++ client
..


Patch Set 2:

Build Started http://104.196.14.100/job/kudu-gerrit/3119/

-- 
To view, visit http://gerrit.cloudera.org:8080/4146
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I3cbbb1df8d3adf60425541b57e68595bbf6e92ff
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] tool: split up action descriptions

2016-08-28 Thread Adar Dembo (Code Review)
Hello Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/4148

to look at the new patch set (#3).

Change subject: tool: split up action descriptions
..

tool: split up action descriptions

With ksck we have a use case for "short" and "long" action descriptions: the
former appears in mode help and action help, while the latter is only in
action help. This patch splits action descriptions into "short" and "extra",
refactoring all actions accordingly. While I was there I got rid of the
label abstraction, which I felt was producing too much unfluent code.

I also added some more tests to kudu-tool-test.

Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
---
M src/kudu/tools/kudu-tool-test.cc
M src/kudu/tools/tool_action.cc
M src/kudu/tools/tool_action.h
M src/kudu/tools/tool_action_cluster.cc
M src/kudu/tools/tool_action_fs.cc
M src/kudu/tools/tool_action_pbc.cc
M src/kudu/tools/tool_action_tablet.cc
M src/kudu/tools/tool_main.cc
8 files changed, 261 insertions(+), 97 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/48/4148/3
-- 
To view, visit http://gerrit.cloudera.org:8080/4148
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] tool: port cfile-dump to 'kudu fs dump cfile'

2016-08-28 Thread Adar Dembo (Code Review)
Hello Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/4151

to look at the new patch set (#2).

Change subject: tool: port cfile-dump to 'kudu fs dump_cfile'
..

tool: port cfile-dump to 'kudu fs dump_cfile'

Some non-cosmetic changes:
- I changed the block_id conversion into something nicer than a CHECK.
- The block_id parameter is expected in base 10, not base 16. To be honest,
  cfile-dump should have used base 10 for quite some time, because that's
  how they're printed in dumped PBs.
- I dropped the num_iterations parameter because it didn't seem useful.

Change-Id: I30cbaa6552e88348cebbf3059390a4c252eb7f8e
---
M src/kudu/cfile/CMakeLists.txt
D src/kudu/cfile/cfile-dump.cc
M src/kudu/cfile/cfile-test-base.h
M src/kudu/tools/kudu-tool-test.cc
M src/kudu/tools/tool_action_fs.cc
5 files changed, 131 insertions(+), 106 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/51/4151/2
-- 
To view, visit http://gerrit.cloudera.org:8080/4151
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I30cbaa6552e88348cebbf3059390a4c252eb7f8e
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] cfile: replace DumpIteratorOptions with number of rows

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: cfile: replace DumpIteratorOptions with number of rows
..


Patch Set 2:

Build Started http://104.196.14.100/job/kudu-gerrit/3121/

-- 
To view, visit http://gerrit.cloudera.org:8080/4150
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I5d9e80e50926a71d22de4f88a7af6a8091bb2063
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-687: expose additional tablet metadata in C++ client

2016-08-28 Thread Adar Dembo (Code Review)
Hello Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/4146

to look at the new patch set (#2).

Change subject: KUDU-687: expose additional tablet metadata in C++ client
..

KUDU-687: expose additional tablet metadata in C++ client

This patch adds new data-only KuduReplica and KuduTablet classes.
Along with KuduTabletServer, the C++ client now has more parity with the
Java client w.r.t. exposing tablet metadata.

For now, this is only exposed via KuduScanToken, because it's already doing
the work to figure out which replicas exist where. That's an odd fit for
ksck (which doesn't scan, at least not using the client), but it should
stave off any controversy stemming from adding dubious public APIs. In the
future, it wouldn't be unreasonable for these classes to be exposed via
KuduTable in some way.

There are four public signature changes:
- Addition of KuduScanToken::tablet(): this is backwards compatible.
- Addition of KuduTabletServer::port(): this is backwards compatible.
- Change to the KuduScanToken constructor: this should be backwards
  compatible, because it's private and so shouldn't used by applications.
- Removal of KuduScanToken::TabletServers(): this is an incompatible change.
  I think it's OK because Impala is the only significant C++ client user and
  it's not even using scan tokens yet.

Change-Id: I3cbbb1df8d3adf60425541b57e68595bbf6e92ff
---
M docs/release_notes.adoc
M src/kudu/client/CMakeLists.txt
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/meta_cache.cc
M src/kudu/client/meta_cache.h
A src/kudu/client/replica-internal.cc
A src/kudu/client/replica-internal.h
M src/kudu/client/scan_token-internal.cc
M src/kudu/client/scan_token-internal.h
M src/kudu/client/scan_token-test.cc
A src/kudu/client/tablet-internal.cc
A src/kudu/client/tablet-internal.h
M src/kudu/client/tablet_server-internal.cc
M src/kudu/client/tablet_server-internal.h
15 files changed, 445 insertions(+), 95 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/46/4146/2
-- 
To view, visit http://gerrit.cloudera.org:8080/4146
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I3cbbb1df8d3adf60425541b57e68595bbf6e92ff
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] KUDU-687: use client in ksck for master operations

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: KUDU-687: use client in ksck for master operations
..


Patch Set 2:

Build Started http://104.196.14.100/job/kudu-gerrit/3120/

-- 
To view, visit http://gerrit.cloudera.org:8080/4147
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Icbd6b28ea1b2c88e02cd451095e4dec94b0ebfc3
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] tool: split up action descriptions

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: tool: split up action descriptions
..


Patch Set 3:

Build Started http://104.196.14.100/job/kudu-gerrit/3123/

-- 
To view, visit http://gerrit.cloudera.org:8080/4148
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-687: use client in ksck for master operations

2016-08-28 Thread Adar Dembo (Code Review)
Hello Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/4147

to look at the new patch set (#2).

Change subject: KUDU-687: use client in ksck for master operations
..

KUDU-687: use client in ksck for master operations

This patch modifies ksck to use the client for all master operations,
restricting direct access only for tserver operations. In doing so, ksck can
now work with multi-master clusters, retrying operations when the leader
master dies.

Interesting things of note:
- For 'kudu cluster ksck', I opted to make the master addresses a variadic
  (i.e. space-delimited) list, but I can also see the case for making it a
  comma-separated list, to be more consistent with --master_addresses.
- I went back and forth on what the semantics of KsckMaster::Connect() ought
  to be. At first I thought we should ping every master, but in the end I
  settled on building the client, which just verifies the existence of a
  leader master. My justification: today's ksck isn't really concerned with
  master health; the master merely provides information that is consumed
  during the real checks: of table and tablet integrity.
- I relented on commit cf009d4 and restored a MiniCluster method to find the
  leader master. It's got the same signature as the ExternalMiniCluster
  variant so that Mike's common cluster interface (a work in progress) can
  expose it.

Change-Id: Icbd6b28ea1b2c88e02cd451095e4dec94b0ebfc3
---
M src/kudu/client/schema.h
M src/kudu/integration-tests/cluster_verifier.cc
M src/kudu/integration-tests/mini_cluster.cc
M src/kudu/integration-tests/mini_cluster.h
M src/kudu/tools/CMakeLists.txt
M src/kudu/tools/ksck-test.cc
M src/kudu/tools/ksck.h
M src/kudu/tools/ksck_remote-test.cc
M src/kudu/tools/ksck_remote.cc
M src/kudu/tools/ksck_remote.h
M src/kudu/tools/tool_action_cluster.cc
11 files changed, 161 insertions(+), 164 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/47/4147/2
-- 
To view, visit http://gerrit.cloudera.org:8080/4147
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Icbd6b28ea1b2c88e02cd451095e4dec94b0ebfc3
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] tool: port cfile-dump to 'kudu fs dump cfile'

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: tool: port cfile-dump to 'kudu fs dump_cfile'
..


Patch Set 2:

Build Started http://104.196.14.100/job/kudu-gerrit/3122/

-- 
To view, visit http://gerrit.cloudera.org:8080/4151
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I30cbaa6552e88348cebbf3059390a4c252eb7f8e
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-687: expose additional tablet metadata in C++ client

2016-08-28 Thread Adar Dembo (Code Review)
Adar Dembo has posted comments on this change.

Change subject: KUDU-687: expose additional tablet metadata in C++ client
..


Patch Set 1:

(6 comments)

http://gerrit.cloudera.org:8080/#/c/4146/1/src/kudu/client/client.h
File src/kudu/client/client.h:

Line 488: NON_PARTICIPANT = 3,
> how come this one has a value but not the others?
My bad. I had values in there originally, then removed them all (or so I 
thought).


Line 495:   Role role() const;
> what's the intended user use case for this one? maybe we can offer somethin
ksck keeps track of replicas that are leaders and those that are followers. 
AFAICT it only actually uses is_leader (see Ksck::VerifyTablet).

I'll replace this with an is_leader() boolean instead.


http://gerrit.cloudera.org:8080/#/c/4146/1/src/kudu/client/meta_cache.cc
File src/kudu/client/meta_cache.cc:

Line 243: void RemoteTablet::GetRemoteReplicas(vector* replicas) 
const {
> should clear replicas first
Done


http://gerrit.cloudera.org:8080/#/c/4146/1/src/kudu/client/replica-internal.cc
File src/kudu/client/replica-internal.cc:

PS1, Line 39: encoding
> 'role type'
Whoops, copy/pasta.


Line 49: default: LOG(FATAL) << "Unexpected encoding type: " << role;
> not sure this is a good idea, since if we added a new role, clients would s
We need to return something; what should we do? Or should all of these be 
modified to return a Status in the event of an unknown input type?

I guess this is a moot point as I'm going to remove the new enum in favor of a 
boolean for is_leader.


http://gerrit.cloudera.org:8080/#/c/4146/1/src/kudu/client/scan_token-internal.cc
File src/kudu/client/scan_token-internal.cc:

Line 258: // they've been moved.
> you could use ElementDeleter and just call client_replicas.clear(); after s
Dan convinced me that following std::move(), it is undefined behavior to access 
an object. But, I see SO posts that agree with your assessment, so I'll switch 
this back.


-- 
To view, visit http://gerrit.cloudera.org:8080/4146
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I3cbbb1df8d3adf60425541b57e68595bbf6e92ff
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] tool: port cfile-dump to 'kudu fs dump cfile'

2016-08-28 Thread Adar Dembo (Code Review)
Adar Dembo has posted comments on this change.

Change subject: tool: port cfile-dump to 'kudu fs dump_cfile'
..


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4151/1/src/kudu/tools/tool_action_fs.cc
File src/kudu/tools/tool_action_fs.cc:

PS1, Line 78:  numeric string
> numeric string? maybe 'could not parse as numeric block ID?"
Done


-- 
To view, visit http://gerrit.cloudera.org:8080/4151
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I30cbaa6552e88348cebbf3059390a4c252eb7f8e
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] cfile: replace DumpIteratorOptions with number of rows

2016-08-28 Thread Adar Dembo (Code Review)
Adar Dembo has posted comments on this change.

Change subject: cfile: replace DumpIteratorOptions with number of rows
..


Patch Set 1:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/4150/1/src/kudu/cfile/cfile-dump.cc
File src/kudu/cfile/cfile-dump.cc:

Line 31: DEFINE_int32(num_iterations, 1, "number of times to iterate the file");
> the original reason to have --noprint_rows not print anything was so that t
Yep, the next patch in this series gets rid of it.


http://gerrit.cloudera.org:8080/#/c/4150/1/src/kudu/cfile/cfile_util.h
File src/kudu/cfile/cfile_util.h:

Line 86: int num_rows,
> do we actually use this other than with 0?
kudu-fs_dump-tool allows users to customize it via FLAGS_nrows. That hasn't 
been ported to the new tool, but I imagine the flag will survive when it is.


-- 
To view, visit http://gerrit.cloudera.org:8080/4150
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I5d9e80e50926a71d22de4f88a7af6a8091bb2063
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] tool: split up action descriptions

2016-08-28 Thread Adar Dembo (Code Review)
Adar Dembo has posted comments on this change.

Change subject: tool: split up action descriptions
..


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4148/2/src/kudu/tools/kudu-tool-test.cc
File src/kudu/tools/kudu-tool-test.cc:

Line 71:   void RunTestAction(const string& arg_str) const {
> maybe name this RunTestActionNoOutput or something so that the implied asse
Done


-- 
To view, visit http://gerrit.cloudera.org:8080/4148
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-1500: Data race in RaftConsensusITest.TestCorruptReplicaMetadata

2016-08-28 Thread Adar Dembo (Code Review)
Adar Dembo has posted comments on this change.

Change subject: KUDU-1500: Data race in 
RaftConsensusITest.TestCorruptReplicaMetadata
..


Patch Set 15:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/3823/15/src/kudu/tablet/tablet_metadata.cc
File src/kudu/tablet/tablet_metadata.cc:

PS15, Line 313:   DCHECK_EQ(table_id_, superblock.table_id());
  :   PartitionSchemaPB partition_schema_pb;
  :   partition_schema_.ToPB(&partition_schema_pb);
  :   
DCHECK_EQ(superblock.partition_schema().SerializeAsString(),
  : partition_schema_pb.SerializeAsString());
  :   PartitionPB partition_pb;
  :   partition_.ToPB(&partition_pb);
  :   DCHECK_EQ(superblock.partition().SerializeAsString(),
  : partition_pb.SerializeAsString());
> #1 is a good idea
I understand that this code isn't executed in release mode, but I feel fairly 
strongly that forward (or backward, for that matter) compatibility behavior 
shouldn't vary between Kudu build types. That's really unexpected, and it's the 
kind of thing that may show up when a user encounters a real bug and tries to 
reproduce it with a debug build to get more information.


-- 
To view, visit http://gerrit.cloudera.org:8080/3823
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: If57617e22b41296b8d4e8ad131220f1ebb235019
Gerrit-PatchSet: 15
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Dinesh Bhat 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-687: use client in ksck for master operations

2016-08-28 Thread Adar Dembo (Code Review)
Adar Dembo has posted comments on this change.

Change subject: KUDU-687: use client in ksck for master operations
..


Patch Set 1:

(5 comments)

http://gerrit.cloudera.org:8080/#/c/4147/1//COMMIT_MSG
Commit Message:

Line 17:   comma-separated list, to be more consistent with --master_addresses.
> yea, I think I prefer comma-separated since it's the same way we specify it
Okay.


http://gerrit.cloudera.org:8080/#/c/4147/1/src/kudu/integration-tests/mini_cluster.cc
File src/kudu/integration-tests/mini_cluster.cc:

PS1, Line 294:  *
> style
Done


http://gerrit.cloudera.org:8080/#/c/4147/1/src/kudu/tools/ksck_remote.cc
File src/kudu/tools/ksck_remote.cc:

Line 284:   for (auto s : servers) {
> const auto&
I'll add const, but why ref? All of these containers are of raw pointers.


Line 324:   for (auto t : tokens) {
> const auto&
See above.


Line 328: for (const auto r : t->tablet().replicas()) {
> auto&
See above.


-- 
To view, visit http://gerrit.cloudera.org:8080/4147
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Icbd6b28ea1b2c88e02cd451095e4dec94b0ebfc3
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-1500: Data race in RaftConsensusITest.TestCorruptReplicaMetadata

2016-08-28 Thread Mike Percy (Code Review)
Mike Percy has posted comments on this change.

Change subject: KUDU-1500: Data race in 
RaftConsensusITest.TestCorruptReplicaMetadata
..


Patch Set 15:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/3823/15/src/kudu/tablet/tablet_metadata.cc
File src/kudu/tablet/tablet_metadata.cc:

PS15, Line 313:   DCHECK_EQ(table_id_, superblock.table_id());
  :   PartitionSchemaPB partition_schema_pb;
  :   partition_schema_.ToPB(&partition_schema_pb);
  :   
DCHECK_EQ(superblock.partition_schema().SerializeAsString(),
  : partition_schema_pb.SerializeAsString());
  :   PartitionPB partition_pb;
  :   partition_.ToPB(&partition_pb);
  :   DCHECK_EQ(superblock.partition().SerializeAsString(),
  : partition_pb.SerializeAsString());
> 1. I actually thought about NDEBUG, but forgot to materialize in between th
#1 is a good idea

Regarding #2, since it's a DCHECK we ignore it in release mode.

Below is what the PBs look like. I suppose we could create equality functions 
for them to try to future proof them from PB changes but I'm not sure it's 
worth it for a DCHECK.

message PartitionPB {
  // The hash buckets of the partition. The number of hash buckets must match
  // the number of hash bucket components in the partition's schema.
  repeated int32 hash_buckets = 1 [packed = true];
  // The encoded start partition key (inclusive).
  optional bytes partition_key_start = 2;
  // The encoded end partition key (exclusive).
  optional bytes partition_key_end = 3;
}

// The serialized format of a Kudu table partition schema.
message PartitionSchemaPB {

  // A column identifier for partition schemas. In general, the name will be
  // used when a client creates the table since column IDs are assigned by the
  // master. All other uses of partition schemas will use the numeric column ID.
  message ColumnIdentifierPB {
oneof identifier {
  int32 id = 1;
  string name = 2;
}
  }

  message RangeSchemaPB {
// Column identifiers of columns included in the range. All columns must be
// a component of the primary key.
repeated ColumnIdentifierPB columns = 1;
  }

  message HashBucketSchemaPB {
// Column identifiers of columns included in the hash. Every column must be
// a component of the primary key.
repeated ColumnIdentifierPB columns = 1;

// Number of buckets into which columns will be hashed. Must be at least 2.
required int32 num_buckets = 2;

// Seed value for hash calculation. Administrators may set a seed value
// on a per-table basis in order to randomize the mapping of rows to
// buckets. Setting a seed provides some amount of protection against denial
// of service attacks when the hash bucket columns contain user provided
// input.
optional uint32 seed = 3;

enum HashAlgorithm {
  UNKNOWN = 0;
  MURMUR_HASH_2 = 1;
}

// The hash algorithm to use for calculating the hash bucket.
optional HashAlgorithm hash_algorithm = 4;
  }

  repeated HashBucketSchemaPB hash_bucket_schemas = 1;
  optional RangeSchemaPB range_schema = 2;
}


-- 
To view, visit http://gerrit.cloudera.org:8080/3823
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: If57617e22b41296b8d4e8ad131220f1ebb235019
Gerrit-PatchSet: 15
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Dinesh Bhat 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-1500: Data race in RaftConsensusITest.TestCorruptReplicaMetadata

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: KUDU-1500: Data race in 
RaftConsensusITest.TestCorruptReplicaMetadata
..


Patch Set 16:

Build Started http://104.196.14.100/job/kudu-gerrit/3118/

-- 
To view, visit http://gerrit.cloudera.org:8080/3823
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: If57617e22b41296b8d4e8ad131220f1ebb235019
Gerrit-PatchSet: 16
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Dinesh Bhat 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-1500: Data race in RaftConsensusITest.TestCorruptReplicaMetadata

2016-08-28 Thread Dinesh Bhat (Code Review)
Hello Dan Burkert, Mike Percy, Adar Dembo, Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/3823

to look at the new patch set (#16).

Change subject: KUDU-1500: Data race in 
RaftConsensusITest.TestCorruptReplicaMetadata
..

KUDU-1500: Data race in RaftConsensusITest.TestCorruptReplicaMetadata

The test intends to corrupt the metadata of one of the tserver tablets.
While the cluster is in the process of resurrecting the failed tserver,
the Partition and PartitionSchema on that tserver is accessed using
TabletPeer in an unguarded manner via ListTablets RPCs.

The proposed fix here keeps the Partition and PartitionSchema immutable
after it is loaded for the very first time. These fields are never
overwritten again during tablet-copy or any other workflow.
Also a unit test is added to exercise this data race window. i.e,
the unit test aims to issue ListTablets RPCs during a follower's
tablet copy stage and provides an optimistic coverage for the fix.
DCHECKs are added to make sure the oncoming protobuf fields
match the immutable fields not updated during tablet-copy.

Testing: Spun a test TabletCopyITest.TestDeleteTabletDuringTabletCopy
which exercises this data race window, also ran original test which
caught the race in raft_consensus-itest.TestCorruptReplicaMetadata.

Change-Id: If57617e22b41296b8d4e8ad131220f1ebb235019
---
M src/kudu/integration-tests/tablet_copy-itest.cc
M src/kudu/tablet/tablet_metadata.cc
2 files changed, 120 insertions(+), 16 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/23/3823/16
-- 
To view, visit http://gerrit.cloudera.org:8080/3823
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: If57617e22b41296b8d4e8ad131220f1ebb235019
Gerrit-PatchSet: 16
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Dinesh Bhat 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] Fix kudu-ts-cli crash when there is no data in tablet

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has posted comments on this change.

Change subject: Fix kudu-ts-cli crash when there is no data in tablet
..


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4134/2/src/kudu/tools/ts-cli.cc
File src/kudu/tools/ts-cli.cc:

Line 278:   break;
> What if the response has more results?  I.e., is it guaranteed that if !has
nope, that's not guaranteed - you can get an empty batch in the "middle" of a 
scan


-- 
To view, visit http://gerrit.cloudera.org:8080/4134
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I8470377400047236127dd409b4825c5c6ea6bbae
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dinesh Bhat 
Gerrit-Reviewer: Alexey Serbin 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] [docs] added tip on generic git commit guidelines

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has submitted this change and it was merged.

Change subject: [docs] added tip on generic git commit guidelines
..


[docs] added tip on generic git commit guidelines

Change-Id: I5493723f7f0b337b73e3ef5ed4a7621fe5249927
Reviewed-on: http://gerrit.cloudera.org:8080/4115
Reviewed-by: Todd Lipcon 
Tested-by: Kudu Jenkins
---
M docs/contributing.adoc
1 file changed, 3 insertions(+), 0 deletions(-)

Approvals:
  Todd Lipcon: Looks good to me, approved
  Kudu Jenkins: Verified



-- 
To view, visit http://gerrit.cloudera.org:8080/4115
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I5493723f7f0b337b73e3ef5ed4a7621fe5249927
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Alexey Serbin 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] tool: port cfile-dump to 'kudu fs dump cfile'

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has posted comments on this change.

Change subject: tool: port cfile-dump to 'kudu fs dump_cfile'
..


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4151/1/src/kudu/tools/tool_action_fs.cc
File src/kudu/tools/tool_action_fs.cc:

PS1, Line 78:  numeric string
numeric string? maybe 'could not parse as numeric block ID?"


-- 
To view, visit http://gerrit.cloudera.org:8080/4151
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I30cbaa6552e88348cebbf3059390a4c252eb7f8e
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] cfile: replace DumpIteratorOptions with number of rows

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has posted comments on this change.

Change subject: cfile: replace DumpIteratorOptions with number of rows
..


Patch Set 1:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/4150/1/src/kudu/cfile/cfile-dump.cc
File src/kudu/cfile/cfile-dump.cc:

Line 31: DEFINE_int32(num_iterations, 1, "number of times to iterate the file");
the original reason to have --noprint_rows not print anything was so that this 
tool could be used for benchmarking raw read performance of a cfile, which also 
explains num_iterations. I agree that we have better (and more relevant) 
benchmarks now, but let's also get rid of num_iterations while we're at it


http://gerrit.cloudera.org:8080/#/c/4150/1/src/kudu/cfile/cfile_util.h
File src/kudu/cfile/cfile_util.h:

Line 86: int num_rows,
do we actually use this other than with 0?


-- 
To view, visit http://gerrit.cloudera.org:8080/4150
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I5d9e80e50926a71d22de4f88a7af6a8091bb2063
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] tool: split up action descriptions

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has posted comments on this change.

Change subject: tool: split up action descriptions
..


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4148/2/src/kudu/tools/kudu-tool-test.cc
File src/kudu/tools/kudu-tool-test.cc:

Line 71:   void RunTestAction(const string& arg_str) const {
maybe name this RunTestActionNoOutput or something so that the implied 
assertion is more clear?


-- 
To view, visit http://gerrit.cloudera.org:8080/4148
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-687: use client in ksck for master operations

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has posted comments on this change.

Change subject: KUDU-687: use client in ksck for master operations
..


Patch Set 1:

(5 comments)

http://gerrit.cloudera.org:8080/#/c/4147/1//COMMIT_MSG
Commit Message:

Line 17:   comma-separated list, to be more consistent with --master_addresses.
yea, I think I prefer comma-separated since it's the same way we specify it 
everywhere else (and in other tools)


http://gerrit.cloudera.org:8080/#/c/4147/1/src/kudu/integration-tests/mini_cluster.cc
File src/kudu/integration-tests/mini_cluster.cc:

PS1, Line 294:  *
style


http://gerrit.cloudera.org:8080/#/c/4147/1/src/kudu/tools/ksck_remote.cc
File src/kudu/tools/ksck_remote.cc:

Line 284:   for (auto s : servers) {
const auto&


Line 324:   for (auto t : tokens) {
const auto&


Line 328: for (const auto r : t->tablet().replicas()) {
auto&


-- 
To view, visit http://gerrit.cloudera.org:8080/4147
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Icbd6b28ea1b2c88e02cd451095e4dec94b0ebfc3
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-687: expose additional tablet metadata in C++ client

2016-08-28 Thread Todd Lipcon (Code Review)
Todd Lipcon has posted comments on this change.

Change subject: KUDU-687: expose additional tablet metadata in C++ client
..


Patch Set 1:

(6 comments)

http://gerrit.cloudera.org:8080/#/c/4146/1/src/kudu/client/client.h
File src/kudu/client/client.h:

Line 488: NON_PARTICIPANT = 3,
how come this one has a value but not the others?


Line 495:   Role role() const;
what's the intended user use case for this one? maybe we can offer something a 
bit more 'semantic'? otherwise if we add other roles like 'PRE_VOTER' it'll be 
hard to do compatibly in this API


http://gerrit.cloudera.org:8080/#/c/4146/1/src/kudu/client/meta_cache.cc
File src/kudu/client/meta_cache.cc:

Line 243: void RemoteTablet::GetRemoteReplicas(vector* replicas) 
const {
should clear replicas first


http://gerrit.cloudera.org:8080/#/c/4146/1/src/kudu/client/replica-internal.cc
File src/kudu/client/replica-internal.cc:

PS1, Line 39: encoding
'role type'


Line 49: default: LOG(FATAL) << "Unexpected encoding type: " << role;
not sure this is a good idea, since if we added a new role, clients would start 
crashing


http://gerrit.cloudera.org:8080/#/c/4146/1/src/kudu/client/scan_token-internal.cc
File src/kudu/client/scan_token-internal.cc:

Line 258: // they've been moved.
you could use ElementDeleter and just call client_replicas.clear(); after 
std::moveing it (std::move guarantees that the moved-from object is in a "valid 
but undefined state", in which case clear() on it is safe


-- 
To view, visit http://gerrit.cloudera.org:8080/4146
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I3cbbb1df8d3adf60425541b57e68595bbf6e92ff
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy 
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] compaction policy: fix bound calculation

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: compaction_policy: fix bound calculation
..


Patch Set 1:

Build Started http://104.196.14.100/job/kudu-gerrit/3116/

-- 
To view, visit http://gerrit.cloudera.org:8080/4152
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I76364c17debd7293b36884d64c7747f8c604ae12
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Todd Lipcon 
Gerrit-Reviewer: Anonymous Coward #174
Gerrit-Reviewer: Kudu Jenkins
Gerrit-HasComments: No


[kudu-CR] compaction policy: fix bound calculation

2016-08-28 Thread Todd Lipcon (Code Review)
Hello Anonymous Coward #174,

I'd like you to do a code review.  Please visit

http://gerrit.cloudera.org:8080/4152

to review the following change.

Change subject: compaction_policy: fix bound calculation
..

compaction_policy: fix bound calculation

The upper-bound calculator for the knapsack problem maintains a heap
which is supposed to keep no more than one item beyond the maximum
weight allowed.

This invariant got broken in some cases when an item was added to the
heap -- in some cases a single addition actually requires removing
multiple old items.

Change-Id: I76364c17debd7293b36884d64c7747f8c604ae12
---
M src/kudu/tablet/compaction_policy.cc
1 file changed, 6 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/52/4152/1
-- 
To view, visit http://gerrit.cloudera.org:8080/4152
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I76364c17debd7293b36884d64c7747f8c604ae12
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Todd Lipcon 
Gerrit-Reviewer: Anonymous Coward #174


[kudu-CR] KUDU-1582. Optimize budgeted compaction policy with an approximation

2016-08-28 Thread Todd Lipcon (Code Review)
Hello Anonymous Coward #174,

I'd like you to do a code review.  Please visit

http://gerrit.cloudera.org:8080/4153

to review the following change.

Change subject: KUDU-1582. Optimize budgeted compaction policy with an 
approximation
..

KUDU-1582. Optimize budgeted compaction policy with an approximation

On a server with ~5.5TB of data, I noticed that the maintenance manager
was spending tens of seconds computing optimal compactions, and most of
the time was in knapsack solving.

This patch implements a "first pass" solution to the compaction policy
using an approximation algorithm that is significantly faster than the
actual knapsack solver. The approximation algorithm gives a lower bound
solution which is at least 50% as good as the optimal solution (i.e. it
is a '2-approximation'). In practice, it is often optimal or nearly
optimal.

To test, I dumped the bounds and sizes of rowsets from a 200+GB YCSB
tablet from a real cluster that has been inserting for a few days, and
wrote a test which imported that layout back in as mock rowsets in order
to run the policy.

The result (with the default 5% max approximation error) is between a 6x
and 20x speedup (depending on the budget size). The resulting loss in
solution quality is less than 1%.

Before:
  Time spent Computing compaction with 128MB budget: real 0.965suser 
0.964s sys 0.000s
   quality=0.118006
  Time spent Computing compaction with 256MB budget: real 1.202suser 
1.204s sys 0.000s
   quality=0.254289
  Time spent Computing compaction with 512MB budget: real 2.233suser 
2.232s sys 0.000s
   quality=0.524391
  Time spent Computing compaction with 1024MB budget: real 4.202s   user 
4.200s sys 0.000s
   quality=1.06674

After:
  Time spent Computing compaction with 128MB budget: real 0.148suser 
0.148s sys 0.000s
   quality=0.117985
  Time spent Computing compaction with 256MB budget: real 0.162suser 
0.160s sys 0.000s
   quality=0.252118
  Time spent Computing compaction with 512MB budget: real 0.174suser 
0.176s sys 0.000s
   quality=0.524391
  Time spent Computing compaction with 1024MB budget: real 0.206s   user 
0.208s sys 0.000s
   quality=1.06674

Change-Id: I4e611f161d66ddc47e97e3b5328bc1778a4ac958
---
M src/kudu/tablet/CMakeLists.txt
M src/kudu/tablet/compaction_policy-test.cc
M src/kudu/tablet/compaction_policy.cc
A src/kudu/tablet/ycsb-test-rowsets.tsv
4 files changed, 7,063 insertions(+), 83 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/53/4153/1
-- 
To view, visit http://gerrit.cloudera.org:8080/4153
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I4e611f161d66ddc47e97e3b5328bc1778a4ac958
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Todd Lipcon 
Gerrit-Reviewer: Anonymous Coward #174


[kudu-CR] KUDU-1582. Optimize budgeted compaction policy with an approximation

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: KUDU-1582. Optimize budgeted compaction policy with an 
approximation
..


Patch Set 1:

Build Started http://104.196.14.100/job/kudu-gerrit/3117/

-- 
To view, visit http://gerrit.cloudera.org:8080/4153
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I4e611f161d66ddc47e97e3b5328bc1778a4ac958
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Todd Lipcon 
Gerrit-Reviewer: Anonymous Coward #174
Gerrit-Reviewer: Kudu Jenkins
Gerrit-HasComments: No


[kudu-CR] tool: split up action descriptions

2016-08-28 Thread Adar Dembo (Code Review)
Hello Todd Lipcon, Kudu Jenkins,

I'd like you to reexamine a change.  Please visit

http://gerrit.cloudera.org:8080/4148

to look at the new patch set (#2).

Change subject: tool: split up action descriptions
..

tool: split up action descriptions

With ksck we have a use case for "short" and "long" action descriptions: the
former appears in mode help and action help, while the latter is only in
action help. This patch splits action descriptions into "short" and "extra",
refactoring all actions accordingly. While I was there I got rid of the
label abstraction, which I felt was producing too much unfluent code.

I also added some more tests to kudu-tool-test.

Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
---
M src/kudu/tools/kudu-tool-test.cc
M src/kudu/tools/tool_action.cc
M src/kudu/tools/tool_action.h
M src/kudu/tools/tool_action_cluster.cc
M src/kudu/tools/tool_action_fs.cc
M src/kudu/tools/tool_action_pbc.cc
M src/kudu/tools/tool_action_tablet.cc
M src/kudu/tools/tool_main.cc
8 files changed, 261 insertions(+), 97 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/48/4148/2
-- 
To view, visit http://gerrit.cloudera.org:8080/4148
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] tool: port cfile-dump to 'kudu fs dump cfile'

2016-08-28 Thread Adar Dembo (Code Review)
Hello Todd Lipcon,

I'd like you to do a code review.  Please visit

http://gerrit.cloudera.org:8080/4151

to review the following change.

Change subject: tool: port cfile-dump to 'kudu fs dump_cfile'
..

tool: port cfile-dump to 'kudu fs dump_cfile'

Some non-cosmetic changes:
- I changed the block_id conversion into something nicer than a CHECK.
- The block_id parameter is expected in base 10, not base 16. To be honest,
  cfile-dump should have used base 10 for quite some time, because that's
  how they're printed in dumped PBs.
- I dropped the num_iterations parameter because it didn't seem useful.

Change-Id: I30cbaa6552e88348cebbf3059390a4c252eb7f8e
---
M src/kudu/cfile/CMakeLists.txt
D src/kudu/cfile/cfile-dump.cc
M src/kudu/cfile/cfile-test-base.h
M src/kudu/tools/kudu-tool-test.cc
M src/kudu/tools/tool_action_fs.cc
5 files changed, 131 insertions(+), 106 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/51/4151/1
-- 
To view, visit http://gerrit.cloudera.org:8080/4151
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I30cbaa6552e88348cebbf3059390a4c252eb7f8e
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] tool: port cfile-dump to 'kudu fs dump cfile'

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: tool: port cfile-dump to 'kudu fs dump_cfile'
..


Patch Set 1:

Build Started http://104.196.14.100/job/kudu-gerrit/3115/

-- 
To view, visit http://gerrit.cloudera.org:8080/4151
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I30cbaa6552e88348cebbf3059390a4c252eb7f8e
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] cfile: replace DumpIteratorOptions with number of rows

2016-08-28 Thread Adar Dembo (Code Review)
Hello Todd Lipcon,

I'd like you to do a code review.  Please visit

http://gerrit.cloudera.org:8080/4150

to review the following change.

Change subject: cfile: replace DumpIteratorOptions with number of rows
..

cfile: replace DumpIteratorOptions with number of rows

As of commit 9884fab, DumpIterator() doesn't print anything at all when
print_rows is false. That makes the option rather useless, so I'm replacing
it here with the raw number of rows.

Change-Id: I5d9e80e50926a71d22de4f88a7af6a8091bb2063
---
M src/kudu/cfile/cfile-dump.cc
M src/kudu/cfile/cfile_util.cc
M src/kudu/cfile/cfile_util.h
M src/kudu/tools/fs_tool.cc
4 files changed, 27 insertions(+), 52 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/50/4150/1
-- 
To view, visit http://gerrit.cloudera.org:8080/4150
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5d9e80e50926a71d22de4f88a7af6a8091bb2063
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] tool: split up action descriptions

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: tool: split up action descriptions
..


Patch Set 2:

Build Started http://104.196.14.100/job/kudu-gerrit/3113/

-- 
To view, visit http://gerrit.cloudera.org:8080/4148
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] cfile: replace DumpIteratorOptions with number of rows

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: cfile: replace DumpIteratorOptions with number of rows
..


Patch Set 1:

Build Started http://104.196.14.100/job/kudu-gerrit/3114/

-- 
To view, visit http://gerrit.cloudera.org:8080/4150
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I5d9e80e50926a71d22de4f88a7af6a8091bb2063
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-1581 Fix DataFrame read failure when table has Binary Col For Binary Cols, kudu-spark is returning a ByteBuffer object when Spark expects to receive Array[Byte], so change is to return

2016-08-28 Thread Will Berkeley (Code Review)
Will Berkeley has posted comments on this change.

Change subject: KUDU-1581 Fix DataFrame read failure when table has Binary Col 
For Binary Cols, kudu-spark is returning a ByteBuffer object when Spark expects 
to receive Array[Byte], so change is to return a copy of the byte array. 
Modified testcase to add missing col ty
..


Patch Set 2: Code-Review+1

(4 comments)

Couple whitespace and casing nits. Otherwise LGTM.

http://gerrit.cloudera.org:8080/#/c/4145/2//COMMIT_MSG
Commit Message:

PS2, Line 8: For Binary 
Nit: empty line here to conform to usual style


http://gerrit.cloudera.org:8080/#/c/4145/2/java/kudu-spark/pom.xml
File java/kudu-spark/pom.xml:

PS2, Line 57: 
: 
Nit: extra line break introduced here-- remove.


http://gerrit.cloudera.org:8080/#/c/4145/2/java/kudu-spark/src/test/scala/org/apache/kudu/spark/kudu/TestContext.scala
File 
java/kudu-spark/src/test/scala/org/apache/kudu/spark/kudu/TestContext.scala:

PS2, Line 54: "c9_Timestamp"
Nit: c9_timestamp -- just to have consistent case


PS2, Line 55: "c10_Byte"
Ditto


-- 
To view, visit http://gerrit.cloudera.org:8080/4145
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I3e3926d85fab7efb407325c9992c3fccdab04bad
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Ram Mettu 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Ram Mettu 
Gerrit-Reviewer: Will Berkeley 
Gerrit-HasComments: Yes


[kudu-CR](gh-pages) kudu flume sink blog post

2016-08-28 Thread Ara Ebrahimi (Code Review)
Ara Ebrahimi has uploaded a new change for review.

  http://gerrit.cloudera.org:8080/4149

Change subject: kudu flume sink blog post
..

kudu flume sink blog post

Change-Id: I33166f0c3a0f739527d009808d4433342f9a95a8
---
M _posts/2016-07-06-flume.md
1 file changed, 144 insertions(+), 103 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/49/4149/1
-- 
To view, visit http://gerrit.cloudera.org:8080/4149
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I33166f0c3a0f739527d009808d4433342f9a95a8
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: gh-pages
Gerrit-Owner: Ara Ebrahimi 


[kudu-CR] tool: split up action descriptions

2016-08-28 Thread Kudu Jenkins (Code Review)
Kudu Jenkins has posted comments on this change.

Change subject: tool: split up action descriptions
..


Patch Set 1:

Build Started http://104.196.14.100/job/kudu-gerrit/3112/

-- 
To view, visit http://gerrit.cloudera.org:8080/4148
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] tool: split up action descriptions

2016-08-28 Thread Adar Dembo (Code Review)
Hello Todd Lipcon,

I'd like you to do a code review.  Please visit

http://gerrit.cloudera.org:8080/4148

to review the following change.

Change subject: tool: split up action descriptions
..

tool: split up action descriptions

With ksck we have a use case for "short" and "long" action descriptions: the
former appears in mode help and action help, while the latter is only in
action help. This patch splits action descriptions into "short" and "extra",
refactoring all actions accordingly. While I was there I got rid of the
label abstraction, which I felt was producing too much unfluent code.

I also added some more tests to kudu-tool-test.

Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
---
M src/kudu/tools/kudu-tool-test.cc
M src/kudu/tools/tool_action.cc
M src/kudu/tools/tool_action.h
M src/kudu/tools/tool_action_cluster.cc
M src/kudu/tools/tool_action_fs.cc
M src/kudu/tools/tool_action_pbc.cc
M src/kudu/tools/tool_action_tablet.cc
M src/kudu/tools/tool_main.cc
8 files changed, 255 insertions(+), 97 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/48/4148/1
-- 
To view, visit http://gerrit.cloudera.org:8080/4148
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie90b6228bba54575933fd9ac2f4f0bebf579ecd7
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo 
Gerrit-Reviewer: Todd Lipcon