[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2018-12-04 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/4491 )

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 17:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4491/17//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/4491/17//COMMIT_MSG@9
PS17, Line 9: Adds `INSERT IGNORE' operation which behaves like a
: normal `INSERT' except in the case when a duplicate
: row error would be raised by the primary key having been
: previously inserted.
> So if I'm understanding you correctly, your suggestion is:
Yep you have it correctly. I'll take this to the JIRA to gather feedback.



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-Change-Number: 4491
Gerrit-PatchSet: 17
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Comment-Date: Tue, 04 Dec 2018 22:26:14 +
Gerrit-HasComments: Yes


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2018-12-03 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/4491 )

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 17:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4491/17//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/4491/17//COMMIT_MSG@9
PS17, Line 9: Adds `INSERT IGNORE' operation which behaves like a
: normal `INSERT' except in the case when a duplicate
: row error would be raised by the primary key having been
: previously inserted.
> Hmm, I thought the feedback from Dan and MJ in KUDU-1563 was to broaden the
I understand MJ's suggestion as making a very extensible framework where a 
client could say provide a tuple of an operation and *any error* and have them 
ignored. I might have misread but I wasn't sold on that. Feels like it's ripe 
for confusion since in some situations the error returned will change over time.

I am also not sure I want to ignore every error. For example for my use case, I 
want to ignore DUPLICATE KEY errors but I definitely do not want to ignore any 
other errors because I am very concerned about data loss.

However, I do think there is a middle ground where we can make this more 
extensible but only allow the user to ignore errors on the server side when we 
feel as a community there ie a valid use case for ignoring that error.

In terms of making it more extensible, what makes sense to mean is:
* Have a session property which defines a set of modes. eg 
INSERT_IGNORE_DUPLICATE_KEY, DELETE_IGNORE_MISSING_KEY, etc
* Each "mode" is implemented by Kudu developers for use cases which feel is 
"safe" and "makes sense"
* I'll add INSERT_IGNORE_DUPLICATE_KEY which behaves like this patch and then 
others can add more capabilities as they see fit.

I think that is an easy to use interface, safe, and reduces the implementation 
burden for this change.



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-Change-Number: 4491
Gerrit-PatchSet: 17
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Comment-Date: Tue, 04 Dec 2018 05:43:48 +
Gerrit-HasComments: Yes


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2018-12-02 Thread Brock Noland (Code Review)
Hello Tidy Bot, David Ribeiro Alves, Jean-Daniel Cryans, Kudu Jenkins, Todd 
Lipcon,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 339 insertions(+), 70 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/17
--
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-Change-Number: 4491
Gerrit-PatchSet: 17
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2018-12-02 Thread Brock Noland (Code Review)
Hello Tidy Bot, David Ribeiro Alves, Jean-Daniel Cryans, Kudu Jenkins, Todd 
Lipcon,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 343 insertions(+), 74 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-Change-Number: 4491
Gerrit-PatchSet: 16
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] [python] KUDU-1563. Add support for INSERT IGNORE

2018-12-02 Thread Brock Noland (Code Review)
Hello David Ribeiro Alves, Kudu Jenkins, Jordan Birdsell, Todd Lipcon,

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

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

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

Change subject: [python] KUDU-1563. Add support for INSERT IGNORE
..

[python] KUDU-1563. Add support for INSERT IGNORE

Implements python support for the `INSERT IGNORE' operation

Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
---
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
M python/kudu/tests/test_client.py
4 files changed, 36 insertions(+), 2 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-Change-Number: 4522
Gerrit-PatchSet: 16
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] [python] KUDU-1563. Add support for INSERT IGNORE

2018-12-02 Thread Brock Noland (Code Review)
Hello David Ribeiro Alves, Kudu Jenkins, Jordan Birdsell, Todd Lipcon,

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

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

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

Change subject: [python] KUDU-1563. Add support for INSERT IGNORE
..

[python] KUDU-1563. Add support for INSERT IGNORE

Implements python support for the `INSERT IGNORE' operation

Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
---
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
M python/kudu/tests/test_client.py
4 files changed, 39 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/22/4522/15
--
To view, visit http://gerrit.cloudera.org:8080/4522
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-Change-Number: 4522
Gerrit-PatchSet: 15
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2018-12-02 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/4491 )

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 15:

Test failure appears to be unrelated and flaky. The test also passed in the run 
on the next patch in this set.


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-Change-Number: 4491
Gerrit-PatchSet: 15
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Comment-Date: Sun, 02 Dec 2018 16:30:30 +
Gerrit-HasComments: No


[kudu-CR] Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

2018-12-02 Thread Brock Noland (Code Review)
Hello Tidy Bot, Kudu Jenkins,

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

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

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

Change subject: Implement feature flag support on WriteRpc and add flag for 
INSERT IGNORE
..

Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
---
M src/kudu/client/batcher.cc
M src/kudu/client/client-test.cc
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tserver.proto
6 files changed, 52 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/41/5241/5
--
To view, visit http://gerrit.cloudera.org:8080/5241
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
Gerrit-Change-Number: 5241
Gerrit-PatchSet: 5
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2018-12-01 Thread Brock Noland (Code Review)
Hello Tidy Bot, David Ribeiro Alves, Jean-Daniel Cryans, Kudu Jenkins, Todd 
Lipcon,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 344 insertions(+), 69 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/15
--
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-Change-Number: 4491
Gerrit-PatchSet: 15
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

2018-12-01 Thread Brock Noland (Code Review)
Hello Tidy Bot, Kudu Jenkins,

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

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

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

Change subject: Implement feature flag support on WriteRpc and add flag for 
INSERT IGNORE
..

Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
---
M src/kudu/client/batcher.cc
M src/kudu/client/client-test.cc
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/mini-cluster/external_mini_cluster-test.cc
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tserver.proto
7 files changed, 53 insertions(+), 3 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
Gerrit-Change-Number: 5241
Gerrit-PatchSet: 4
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)


[kudu-CR] Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

2018-12-01 Thread Brock Noland (Code Review)
Hello Tidy Bot, Kudu Jenkins,

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

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

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

Change subject: Implement feature flag support on WriteRpc and add flag for 
INSERT IGNORE
..

Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
---
M src/kudu/client/batcher.cc
M src/kudu/client/client-test.cc
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tserver.proto
6 files changed, 52 insertions(+), 3 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
Gerrit-Change-Number: 5241
Gerrit-PatchSet: 3
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2018-12-01 Thread Brock Noland (Code Review)
Hello Tidy Bot, David Ribeiro Alves, Jean-Daniel Cryans, Kudu Jenkins, Todd 
Lipcon,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 343 insertions(+), 69 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/14
--
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-Change-Number: 4491
Gerrit-PatchSet: 14
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

2018-12-01 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: Implement feature flag support on WriteRpc and add flag for 
INSERT IGNORE
..

Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
---
M src/kudu/client/batcher.cc
M src/kudu/client/client-test.cc
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tserver.proto
6 files changed, 52 insertions(+), 3 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
Gerrit-Change-Number: 5241
Gerrit-PatchSet: 2
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins (120)


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2018-12-01 Thread Brock Noland (Code Review)
Hello Tidy Bot, David Ribeiro Alves, Jean-Daniel Cryans, Kudu Jenkins, Todd 
Lipcon,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 337 insertions(+), 63 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/13
--
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-Change-Number: 4491
Gerrit-PatchSet: 13
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2018-12-01 Thread Brock Noland (Code Review)
Hello Jean-Daniel Cryans, Kudu Jenkins,

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

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

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

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..

[java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 136 insertions(+), 1 deletion(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-Change-Number: 4523
Gerrit-PatchSet: 16
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins (120)


[kudu-CR](gh-pages) Blog: Two minor tweeks to 'Getting Started with Kudu - an O'Reilly Title'

2018-08-08 Thread Brock Noland (Code Review)
Brock Noland has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/11167


Change subject: Blog: Two minor tweeks to 'Getting Started with Kudu - an 
O'Reilly Title'
..

Blog: Two minor tweeks to 'Getting Started with Kudu - an O'Reilly Title'

Change-Id: Ia53f8743488cd6eedd27b48352cdfb1c323d840e
---
M _posts/2018-08-06-getting-started-with-kudu-an-oreilly-title.md
1 file changed, 1 insertion(+), 1 deletion(-)



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

Gerrit-Project: kudu
Gerrit-Branch: gh-pages
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia53f8743488cd6eedd27b48352cdfb1c323d840e
Gerrit-Change-Number: 11167
Gerrit-PatchSet: 1
Gerrit-Owner: Brock Noland 


[kudu-CR](gh-pages) Blog: Getting Started with Kudu

2018-08-08 Thread Brock Noland (Code Review)
Hello Jordan Birdsell, Todd Lipcon,

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

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

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

Change subject: Blog: Getting Started with Kudu
..

Blog: Getting Started with Kudu

Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
---
A _posts/2018-08-06-getting-started-with-kudu-an-oreilly-title.md
A img/2018-08-06-getting-started-with-kudu-an-oreilly-title.gif
2 files changed, 60 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/36/11136/5
--
To view, visit http://gerrit.cloudera.org:8080/11136
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: gh-pages
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
Gerrit-Change-Number: 11136
Gerrit-PatchSet: 5
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR](gh-pages) Blog: Getting Started with Kudu

2018-08-08 Thread Brock Noland (Code Review)
Hello Jordan Birdsell, Todd Lipcon,

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

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

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

Change subject: Blog: Getting Started with Kudu
..

Blog: Getting Started with Kudu

Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
---
A _posts/2018-08-06-getting-started-with-kudu-an-oreilly-title.md
A img/2018-08-06-getting-started-with-kudu-an-oreilly-title.gif
2 files changed, 60 insertions(+), 0 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: gh-pages
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
Gerrit-Change-Number: 11136
Gerrit-PatchSet: 4
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR](gh-pages) Blog: Getting Started with Kudu

2018-08-07 Thread Brock Noland (Code Review)
Hello Jordan Birdsell, Todd Lipcon,

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

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

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

Change subject: Blog: Getting Started with Kudu
..

Blog: Getting Started with Kudu

Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
---
A _posts/2018-08-06-getting-started-with-kudu-an-oreilly-title.md
A img/2018-08-06-getting-started-with-kudu-an-oreilly-title.gif
2 files changed, 57 insertions(+), 0 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: gh-pages
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
Gerrit-Change-Number: 11136
Gerrit-PatchSet: 3
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR](gh-pages) Blog: Getting Started with Kudu

2018-08-06 Thread Brock Noland (Code Review)
Hello Jordan Birdsell, Todd Lipcon,

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

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

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

Change subject: Blog: Getting Started with Kudu
..

Blog: Getting Started with Kudu

Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
---
A _posts/2018-08-06-getting-started-with-kudu-an-oreilly-title.md
A img/2018-08-06-getting-started-with-kudu-an-oreilly-title.gif
2 files changed, 57 insertions(+), 0 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: gh-pages
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
Gerrit-Change-Number: 11136
Gerrit-PatchSet: 2
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR](gh-pages) Getting Started with Kudu

2018-08-06 Thread Brock Noland (Code Review)
Brock Noland has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/11136


Change subject: Getting Started with Kudu
..

Getting Started with Kudu

Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
---
A _posts/2018-08-06-getting-started-with-kudu-an-oreilly-title.md
A img/2018-08-06-getting-started-with-kudu-an-oreilly-title.gif
2 files changed, 57 insertions(+), 0 deletions(-)



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

Gerrit-Project: kudu
Gerrit-Branch: gh-pages
Gerrit-MessageType: newchange
Gerrit-Change-Id: I9503dca5e6e565be902c4090bf2996bd1960d763
Gerrit-Change-Number: 11136
Gerrit-PatchSet: 1
Gerrit-Owner: Brock Noland 


[kudu-CR] WIP: clock: add a built-in NTP client implementation

2017-12-01 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/7477 )

Change subject: WIP: clock: add a built-in NTP client implementation
..


Patch Set 6:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/7477/6/src/kudu/clock/builtin_ntp.cc
File src/kudu/clock/builtin_ntp.cc:

http://gerrit.cloudera.org:8080/#/c/7477/6/src/kudu/clock/builtin_ntp.cc@46
PS6, Line 46: DEFINE_string(builtin_ntp_servers,
FWIW, we've found google's time servers to be more reliable then the ntp.org 
ones.
https://developers.google.com/time/guides



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ieb9eee9f0334236f39617492bd6f01304d1a0255
Gerrit-Change-Number: 7477
Gerrit-PatchSet: 6
Gerrit-Owner: Todd Lipcon 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Dan Burkert 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Comment-Date: Fri, 01 Dec 2017 20:37:26 +
Gerrit-HasComments: Yes


[kudu-CR] [python] KUDU-1563. Add support for INSERT IGNORE

2017-01-31 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [python] KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 10:

Yep. I've been a little busy but I plan to get back to this. Should have some 
time this week. Maybe even tonight.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-PatchSet: 10
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2016-11-28 Thread Brock Noland (Code Review)
Hello Jean-Daniel Cryans, Kudu Jenkins,

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

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

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

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..

[java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 139 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 15
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] [python] KUDU-1563. Add support for INSERT IGNORE

2016-11-27 Thread Brock Noland (Code Review)
Hello Jordan Birdsell, Kudu Jenkins,

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

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

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

Change subject: [python] KUDU-1563. Add support for INSERT IGNORE
..

[python] KUDU-1563. Add support for INSERT IGNORE

Implements python support for the `INSERT IGNORE' operation

Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
---
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
M python/kudu/tests/test_client.py
4 files changed, 39 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/22/4522/10
-- 
To view, visit http://gerrit.cloudera.org:8080/4522
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-PatchSet: 10
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-11-27 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 333 insertions(+), 72 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/12
-- 
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 12
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2016-11-27 Thread Brock Noland (Code Review)
Hello Jean-Daniel Cryans, Kudu Jenkins,

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

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

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

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..

[java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 138 insertions(+), 0 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 14
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

2016-11-27 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new change for review.

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

Change subject: Implement feature flag support on WriteRpc and add flag for 
INSERT IGNORE
..

Implement feature flag support on WriteRpc and add flag for INSERT IGNORE

Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
---
M src/kudu/client/batcher.cc
M src/kudu/client/client-test.cc
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tserver.proto
6 files changed, 54 insertions(+), 4 deletions(-)


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I68133e9b92658e56152cdf00ba3f7f10b30e961b
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-11-26 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 11:

(3 comments)

http://gerrit.cloudera.org:8080/#/c/4491/11/src/kudu/client/batcher.cc
File src/kudu/client/batcher.cc:

Line 280: for (uint32_t feature : op->write_op->required_server_features()) 
{
> hummm this smells like it should go on its own patch along with the other f
Will do


http://gerrit.cloudera.org:8080/#/c/4491/11/src/kudu/tablet/tablet_random_access-test.cc
File src/kudu/tablet/tablet_random_access-test.cc:

PS11, Line 113: int r = rand() % 3;
> move 'r' and its assignment to before the outer if
Done


PS11, Line 114: if (r == 1) {
> use switch/case
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 11
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-20 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 11:

Hey guys,

Any chance I could get a new review on this one?

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 11
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-17 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/batcher.cc
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tserver.proto
27 files changed, 351 insertions(+), 69 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/11
-- 
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 11
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-17 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/batcher.cc
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tserver.proto
27 files changed, 352 insertions(+), 69 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/10
-- 
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 10
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2016-10-16 Thread Brock Noland (Code Review)
Hello Jean-Daniel Cryans, Kudu Jenkins,

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

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

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

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..

[java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 139 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 11
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2016-10-16 Thread Brock Noland (Code Review)
Hello Jean-Daniel Cryans, Kudu Jenkins,

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

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

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

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..

[java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 141 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 10
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-16 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Adds `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/batcher.cc
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tserver.proto
27 files changed, 352 insertions(+), 69 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/9
-- 
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 9
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2016-10-16 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 9:

I need to update the java client to send required features.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 9
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-HasComments: No


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-12 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 8:

(17 comments)

Updated patch should have these items addressed.

http://gerrit.cloudera.org:8080/#/c/4491/8//COMMIT_MSG
Commit Message:

PS8, Line 9: Add's 
> nit: adds
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/client/client-test.cc
File src/kudu/client/client-test.cc:

PS8, Line 1847: insertIgnore
> nit (here and elsewhere below): should be 'insert_ignore', not camelCase in
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/client/client.cc
File src/kudu/client/client.cc:

Line 688: 
> nit extra space
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/client/write_op.h
File src/kudu/client/write_op.h:

PS8, Line 149: A single row insert ignore to be sent to the cluster ignored on 
duplicate row
> hum, this sentence reads weird.
Done


PS8, Line 151: insert ignore
> capitalize INSERT IGNORE
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/common/row_operations-test.cc
File src/kudu/common/row_operations-test.cc:

Line 129: enc.Add(RowOperationsPB::INCLUSIVE_RANGE_UPPER_BOUND, row);
> missing a 'break' here.
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/integration-tests/fuzz-itest.cc
File src/kudu/integration-tests/fuzz-itest.cc:

Line 319:   ops->push_back({TEST_INSERT_IGNORE, row_key});
> nit: funny indentation
Done


Line 321:   ops_pending = false;
> ops_pending should be true either way (since there is something to flush)
Done


Line 322:   data_in_mrs = false;
> I don't think you should reset data_in_mrs, because it won't _remove_ data 
Thanks, this helped quite a bit. Hopefully the updated patch will be correct.


Line 324:   exists[row_key] = true;
> you could just set this unconditionally
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/tablet/tablet-test-base.h
File src/kudu/tablet/tablet-test-base.h:

PS8, Line 328:   int64_t count,
 :   int32_t val,
 :   TimeSeries *ts = NULL) {
 :  
> nit: indent
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/tablet/tablet-test.cc
File src/kudu/tablet/tablet-test.cc:

Line 620: 
> nit extra line
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/tablet/tablet.cc
File src/kudu/tablet/tablet.cc:

PS8, Line 408: default
> seems it would be safer to explicitly do a 'case INSERT' here, and then hav
Done


Line 438: default:
> same
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/tablet/tablet_metrics.cc
File src/kudu/tablet/tablet_metrics.cc:

PS8, Line 34: insert ignored
> yea, this isn't a very clear description. I agree the count should be the n
Done


PS8, Line 34: insert ignored
> Maybe this should be counting the number of errors that were ignored instea
Done


http://gerrit.cloudera.org:8080/#/c/4491/8/src/kudu/tablet/transactions/transaction.h
File src/kudu/tablet/transactions/transaction.h:

Line 49:   int successful_insert_ignores;
> does what I mentioned in the tablet metrics apply here?
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 8
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-11 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 8:

"Another thought is to do it at the RowOperations encoding time - you're 
already iterating over the batches there, so it's easy to check if you've used 
any of the new op type and add a new out-param to indicate it"

Thanks, I thought about that as well but was thinking the first was more 
general. I implemented the during encoding approach and it's super simple so 
I'll stick with that unless directed otherwise.

Should have another patch up soon.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 8
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-11 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 8:

>From the JIRA "The Java client currently has an option to ignore duplicate row 
>key errors, which is implemented by filtering the errors on the client side. 
>If we are going to continue to support this feature (and the consensus seems 
>to be that we probably should), we should promote it to a first class 
>operation type that is handled on the server side. This would have a modest 
>perf. improvement since less errors are returned, and it would allow INSERT 
>IGNORE ops to be mixed in the same batch as other INSERT, DELETE, UPSERT, etc. 
>ops."

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 8
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-10 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 8:

As far as the C++ client, it looks like I can take a similar approach to the 
Java client 
(https://github.com/apache/kudu/blob/master/java/kudu-client/src/main/java/org/apache/kudu/client/KuduRpc.java#L140)
 and add required_features to kudu::rpc::Rpc. Then it appears I can attach them 
to the Rpc via the RpcController in the kudu::client:Batcher.

Does that make sense?

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 8
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-04 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 8:

Thanks for the tip on the RPC thing. Spent some time looking into the RPC 
system and looks like it's all setup for me, I just need to plugin.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 8
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: No


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-03 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Add's `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 299 insertions(+), 59 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/8
-- 
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 8
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2016-10-03 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..

[java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 131 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 8
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] [python] KUDU-1563. Add support for INSERT IGNORE

2016-10-03 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [python] KUDU-1563. Add support for INSERT IGNORE
..

[python] KUDU-1563. Add support for INSERT IGNORE

Implements python support for the `INSERT IGNORE' operation

Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
---
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
M python/kudu/tests/test_client.py
4 files changed, 37 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/22/4522/6
-- 
To view, visit http://gerrit.cloudera.org:8080/4522
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-PatchSet: 6
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2016-10-03 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 7:

(6 comments)

http://gerrit.cloudera.org:8080/#/c/4523/7/java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
File java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java:

Line 18: 
> nit: extra line
Done


http://gerrit.cloudera.org:8080/#/c/4523/7/java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
File java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java:

PS7, Line 140: insert ignore
> I think this could be documented better, like how exactly is this "ignore" 
Done


http://gerrit.cloudera.org:8080/#/c/4523/7/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java:

PS7, Line 225: final
> nit: doesn't need to be final.
Done


PS7, Line 227: t
> nit: end code comments with periods.
Done


PS7, Line 237: r
> same
Done


Line 244:   }
> Could be interesting in the clients to test mixing different types of opera
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 7
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-HasComments: Yes


[kudu-CR] [python] KUDU-1563. Add support for INSERT IGNORE

2016-10-03 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [python] KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 5:

(2 comments)

Thank you!

http://gerrit.cloudera.org:8080/#/c/4522/5/python/kudu/tests/test_client.py
File python/kudu/tests/test_client.py:

PS5, Line 164: self.assertRaises(Exception, session.apply, op)
> I think this test would now fail since the last write op will be an insert 
Good catch!


PS5, Line 187: op = table.new_update()
> Is this supposed to be new_insert_ignore?
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-PatchSet: 5
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jordan Birdsell 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-HasComments: Yes


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-10-02 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 7:

(10 comments)

http://gerrit.cloudera.org:8080/#/c/4491/7/src/kudu/integration-tests/fuzz-itest.cc
File src/kudu/integration-tests/fuzz-itest.cc:

Line 80: using client::KuduColumnSchema;
> not your fault, but could you address these warnings? hard to keep track of
Done


Line 82: using client::KuduInsert;
> warning: using decl 'KuduInsert' is unused [misc-unused-using-decls]
Done


Line 83: using client::KuduInsertIgnore;
> warning: using decl 'KuduInsertIgnore' is unused [misc-unused-using-decls]
Done


Line 411: LOG(FATAL) << "r = " << r;
> can you add more info to the output? i.e. what is "r". the row key might al
Done


http://gerrit.cloudera.org:8080/#/c/4491/7/src/kudu/tablet/tablet-test-base.h
File src/kudu/tablet/tablet-test-base.h:

Line 326:   // Inserts "count" rows.
> add: "... , ignoring errors in the case of duplicate keys." or something li
Done


PS7, Line 354:   if (i % 2 == 0) {
 :   CHECK_OK(writer.Insert(row));
 : } else {
 :   CHECK_OK(writer.InsertIgnore(row));
 : }
 :   }
> not sure about this block. What are you trying to do here. You've clearly a
I'll check after rebase, but this didn't make any tests fail since this code 
assumes the insert will be successful, in which case the insert ignore will 
always be successful.

However, I can see why it might be confusing. I'll re-tool.


http://gerrit.cloudera.org:8080/#/c/4491/7/src/kudu/tablet/tablet-test.cc
File src/kudu/tablet/tablet-test.cc:

Line 598: }
> Can you also test with mixed batches? Say Insert, InsertIgnore, Insert on t
Yeah I was doing something similar over in tablet-test-base but I decided to 
change that and move into the main test.


http://gerrit.cloudera.org:8080/#/c/4491/7/src/kudu/tablet/tablet.cc
File src/kudu/tablet/tablet.cc:

Line 401: if (present) {
> would still rather have a switch here (this was one of the intentions of th
Yep gotcha, this is also better.


Line 407: op->SetInsertIgnoreSucceeded();
> this method name here reads even weirder. How about: op->SetInsertErrorIgno
That *is* better


http://gerrit.cloudera.org:8080/#/c/4491/7/src/kudu/tablet/tablet_bootstrap.cc
File src/kudu/tablet/tablet_bootstrap.cc:

Line 365: // refer to INSERT IGNORE. It refers to inserts ignored during 
log replay
> add: "... purposefully ignored due to duplicate key errors during log repla
Is that true though? The `inserts_ignored` property existed before insert 
ignore was implemented so I assumed that `inserts_ignored` means something else 
here but I don't know enough about log replay to know exactly what.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 7
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-HasComments: Yes


[kudu-CR] [tests] fix test which fails with two cpus and document other dependencies

2016-09-26 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [tests] fix test which fails with two cpus and document other 
dependencies
..


Patch Set 6:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4446/6//COMMIT_MSG
Commit Message:

PS6, Line 17: 2) the fact that capacity of SharedLRUCache is higher than the 
capacity
: configured if the configured capacity is not divisible by the the 
number
: of CPUs.
: 
: For example, the capacity is set here:
: 
:   FLAGS_codegen_cache_capacity = 10;
: 
: However, if the capacity is not perfectly divisible by the number 
of CPUs,
: actual capacity is slightly higher.
: 
: CPU 2 => Capacity 10, 5/shard
: CPU 4 => Capacity 12, 3/shard
: CPU 8 => Capacity 16, 2/shard
: 
: Due to this calculation:
: 
: const size_t per_shard = (capacity + (num_shards - 1)) / 
num_shards;
> I appreciate the detailed explanation here, but I'm having a hard time unde
Shoot, my explanation as subpar. I will update, but in each of those examples 
the configured capacity is 10, but the actual capacity is 10, 12, 16.

More details coming.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 6
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 
Gerrit-HasComments: Yes


[kudu-CR] [tests] fix test which fails with two cpus and document other dependencies

2016-09-25 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [tests] fix test which fails with two cpus and document other 
dependencies
..

[tests] fix test which fails with two cpus and document other dependencies

Various tests fail due to lack of lsof and low resource
limits, which are not documented.

CodegenTest.TestCodeCache - fails on my two cpu host, t2.large
increasing the cache size resolves this failure. The test is
depending on:

1) key skew in the SharedLRUCache to obtain hits
2) the fact that capacity of SharedLRUCache is higher than the capacity
configured if the configured capacity is not divisible by the the number
of CPUs.

For example, the capacity is set here:

  FLAGS_codegen_cache_capacity = 10;

However, if the capacity is not perfectly divisible by the number of CPUs,
actual capacity is slightly higher.

CPU 2 => Capacity 10, 5/shard
CPU 4 => Capacity 12, 3/shard
CPU 8 => Capacity 16, 2/shard

Due to this calculation:

const size_t per_shard = (capacity + (num_shards - 1)) / num_shards;

Additionally, the test depends on key skew. For example, I added some temporary
logging which logged each insert. Let's look at inserts into shard 0. Under the
4 CPU case, where each shard has a capacity of 3, shard 3 only sees three 
inserts
in pass 0 resulting in hits on the next pass:

pass: 0
Insert: hash = 460595995, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 326003543, shard = 0
pass: 1

Under the two CPU case, both shard's see more than 5 inserts, causing no cache 
hits.

pass: 0
Insert: hash = 1886151623, shard = 0
Insert: hash = 1395239506, shard = 0
Insert: hash = 1931154674, shard = 0
Insert: hash = 460595995, shard = 0
Insert: hash = 1440596256, shard = 0
Insert: hash = 1870227699, shard = 0
Insert: hash = 1163308785, shard = 0
Insert: hash = 1980547462, shard = 0
Insert: hash = 1106104592, shard = 0
Insert: hash = 1702846352, shard = 0
Insert: hash = 1230845174, shard = 0
Insert: hash = 1903296752, shard = 0
Insert: hash = 1395526688, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 1540160781, shard = 0
Insert: hash = 1377131543, shard = 0
Insert: hash = 2125989246, shard = 0
Insert: hash = 326003543, shard = 0
pass: 1
Insert: hash = 1886151623, shard = 0
Insert: hash = 1395239506, shard = 0
Insert: hash = 1931154674, shard = 0
Insert: hash = 460595995, shard = 0
Insert: hash = 1440596256, shard = 0
Insert: hash = 1870227699, shard = 0
Insert: hash = 1163308785, shard = 0
Insert: hash = 1980547462, shard = 0
Insert: hash = 1106104592, shard = 0
Insert: hash = 1702846352, shard = 0
Insert: hash = 1230845174, shard = 0
Insert: hash = 1903296752, shard = 0
Insert: hash = 1395526688, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 1540160781, shard = 0
Insert: hash = 1377131543, shard = 0
Insert: hash = 2125989246, shard = 0
Insert: hash = 326003543, shard = 0

AFAICT increasing the capacity of the cache doesn't impact correctness.

Change-Id: I81b70f63923078d449f6541a61b292517e49877d
---
M docs/installation.adoc
M src/kudu/codegen/codegen-test.cc
M src/kudu/gutil/sysinfo.cc
3 files changed, 11 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 6
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 


[kudu-CR] [tests] fix test which fails with two cpus and document other dependencies

2016-09-25 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [tests] fix test which fails with two cpus and document other 
dependencies
..


Patch Set 5:

Makes sense. I thought /proc/sys/kernel/pid_max was higher on 64bit systems 
than the 32bit default.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 5
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 
Gerrit-HasComments: No


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-09-25 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 7:

Tests appear to be unrelated as the later patches had their tests pass.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 7
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-HasComments: No


[kudu-CR] [tests] fix test which fails with two cpus and document other dependencies

2016-09-25 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [tests] fix test which fails with two cpus and document other 
dependencies
..


Patch Set 5:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/4446/5/docs/installation.adoc
File docs/installation.adoc:

Line 56: - Limits nproc and nofile greater than 32768
> which tests fail with nproc <= 32768? If this is just a test requirement, I
I didn't hit nproc, I hit nofile. However, given the low default settings for 
both of these, I was just suggesting we just document a reasonable setting 
"generally" which is why I placed it here. Happy to move it somewhere else or 
adjust as needed.

BTW, CM sets both limits to:

Max processes 6553665536processes 
Max open files3276832768files  

for everything running as a child process. As such, it might make sense to 
ensure the most tested configuration is specified here.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 5
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 
Gerrit-HasComments: Yes


[kudu-CR] [tests] fix test which fails with two cpus and document other dependencies

2016-09-25 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [tests] fix test which fails with two cpus and document other 
dependencies
..

[tests] fix test which fails with two cpus and document other dependencies

Various tests fail due to lack of lsof and low resource
limits, which are not documented.

CodegenTest.TestCodeCache - fails on my two cpu host, t2.large
increasing the cache size resolves this failure. The test is
depending on:

1) key skew in the SharedLRUCache to obtain hits
2) the fact that capacity of SharedLRUCache is higher than the capacity
configured if the configured capacity is not divisible by the the number
of CPUs.

For example, the capacity is set here:

  FLAGS_codegen_cache_capacity = 10;

However, if the capacity is not perfectly divisible by the number of CPUs,
actual capacity is slightly higher.

CPU 2 => Capacity 10, 5/shard
CPU 4 => Capacity 12, 3/shard
CPU 8 => Capacity 16, 2/shard

Due to this calculation:

const size_t per_shard = (capacity + (num_shards - 1)) / num_shards;

Additionally, the test depends on key skew. For example, I added some temporary
logging which logged each insert. Let's look at inserts into shard 0. Under the
4 CPU case, where each shard has a capacity of 3, shard 3 only sees three 
inserts
in pass 0 resulting in hits on the next pass:

pass: 0
Insert: hash = 460595995, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 326003543, shard = 0
pass: 1

Under the two CPU case, both shard's see more than 5 inserts, causing no cache 
hits.

pass: 0
Insert: hash = 1886151623, shard = 0
Insert: hash = 1395239506, shard = 0
Insert: hash = 1931154674, shard = 0
Insert: hash = 460595995, shard = 0
Insert: hash = 1440596256, shard = 0
Insert: hash = 1870227699, shard = 0
Insert: hash = 1163308785, shard = 0
Insert: hash = 1980547462, shard = 0
Insert: hash = 1106104592, shard = 0
Insert: hash = 1702846352, shard = 0
Insert: hash = 1230845174, shard = 0
Insert: hash = 1903296752, shard = 0
Insert: hash = 1395526688, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 1540160781, shard = 0
Insert: hash = 1377131543, shard = 0
Insert: hash = 2125989246, shard = 0
Insert: hash = 326003543, shard = 0
pass: 1
Insert: hash = 1886151623, shard = 0
Insert: hash = 1395239506, shard = 0
Insert: hash = 1931154674, shard = 0
Insert: hash = 460595995, shard = 0
Insert: hash = 1440596256, shard = 0
Insert: hash = 1870227699, shard = 0
Insert: hash = 1163308785, shard = 0
Insert: hash = 1980547462, shard = 0
Insert: hash = 1106104592, shard = 0
Insert: hash = 1702846352, shard = 0
Insert: hash = 1230845174, shard = 0
Insert: hash = 1903296752, shard = 0
Insert: hash = 1395526688, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 1540160781, shard = 0
Insert: hash = 1377131543, shard = 0
Insert: hash = 2125989246, shard = 0
Insert: hash = 326003543, shard = 0

AFAICT increasing the capacity of the cache doesn't impact correctness.

Change-Id: I81b70f63923078d449f6541a61b292517e49877d
---
M docs/installation.adoc
M src/kudu/codegen/codegen-test.cc
M src/kudu/gutil/sysinfo.cc
3 files changed, 10 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 5
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-09-25 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Add's `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 270 insertions(+), 47 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/7
-- 
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 7
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot


[kudu-CR] [python] KUDU-1563. Add support for INSERT IGNORE

2016-09-25 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [python] KUDU-1563. Add support for INSERT IGNORE
..

[python] KUDU-1563. Add support for INSERT IGNORE

Implements python support for the `INSERT IGNORE' operation

Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
---
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
M python/kudu/tests/test_client.py
4 files changed, 37 insertions(+), 2 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-PatchSet: 4
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-09-25 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Add's `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 270 insertions(+), 47 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/6
-- 
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 6
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot


[kudu-CR] [tests] fix test which fails with two cpus and document other dependencies

2016-09-24 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [tests] fix test which fails with two cpus and document other 
dependencies
..

[tests] fix test which fails with two cpus and document other dependencies

Various tests fail due to lack of lsof and low resource
limits, which are not documented.

CodegenTest.TestCodeCache - fails on my two cpu host, t2.large
increasing the cache size resolves this failure. The test is
depending on:

1) key skew in the SharedLRUCache to obtain hits
2) the fact that capacity of SharedLRUCache is higher than the capacity
configured if the configured capacity is not divisible by the the number
of CPUs.

For example, the capacity is set here:

  FLAGS_codegen_cache_capacity = 10;

However, if the capacity is not perfectly divisible by the number of CPUs,
actual capacity is slightly higher.

CPU 2 => Capacity 10, 5/shard
CPU 4 => Capacity 12, 3/shard
CPU 8 => Capacity 16, 2/shard

Due to this calculation:

const size_t per_shard = (capacity + (num_shards - 1)) / num_shards;

Additionally, the test depends on key skew. For example, I added some temporary
logging which logged each insert. Let's look at inserts into shard 0. Under the
4 CPU case, where each shard has a capacity of 3, shard 3 only sees three 
inserts
in pass 0 resulting in hits on the next pass:

pass: 0
Insert: hash = 460595995, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 326003543, shard = 0
pass: 1

Under the two CPU case, both shard's see more than 5 inserts, causing no cache 
hits.

pass: 0
Insert: hash = 1886151623, shard = 0
Insert: hash = 1395239506, shard = 0
Insert: hash = 1931154674, shard = 0
Insert: hash = 460595995, shard = 0
Insert: hash = 1440596256, shard = 0
Insert: hash = 1870227699, shard = 0
Insert: hash = 1163308785, shard = 0
Insert: hash = 1980547462, shard = 0
Insert: hash = 1106104592, shard = 0
Insert: hash = 1702846352, shard = 0
Insert: hash = 1230845174, shard = 0
Insert: hash = 1903296752, shard = 0
Insert: hash = 1395526688, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 1540160781, shard = 0
Insert: hash = 1377131543, shard = 0
Insert: hash = 2125989246, shard = 0
Insert: hash = 326003543, shard = 0
pass: 1
Insert: hash = 1886151623, shard = 0
Insert: hash = 1395239506, shard = 0
Insert: hash = 1931154674, shard = 0
Insert: hash = 460595995, shard = 0
Insert: hash = 1440596256, shard = 0
Insert: hash = 1870227699, shard = 0
Insert: hash = 1163308785, shard = 0
Insert: hash = 1980547462, shard = 0
Insert: hash = 1106104592, shard = 0
Insert: hash = 1702846352, shard = 0
Insert: hash = 1230845174, shard = 0
Insert: hash = 1903296752, shard = 0
Insert: hash = 1395526688, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 1540160781, shard = 0
Insert: hash = 1377131543, shard = 0
Insert: hash = 2125989246, shard = 0
Insert: hash = 326003543, shard = 0

AFAICT increasing the capacity of the cache doesn't impact correctness.

Change-Id: I81b70f63923078d449f6541a61b292517e49877d
---
M docs/installation.adoc
M src/kudu/codegen/codegen-test.cc
M src/kudu/gutil/sysinfo.cc
3 files changed, 10 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 4
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 


[kudu-CR] [tests] fix tests - two cpus and fresh install

2016-09-24 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [tests] fix tests - two cpus and fresh install
..

[tests] fix tests - two cpus and fresh install

Various tests fail due to lack of lsof and low resource
limits, which are not documented.

CodegenTest.TestCodeCache - fails on my two cpu host, t2.large
increasing the cache size resolves this failure. The test is
depending on:

1) key skew in the SharedLRUCache to obtain hits
2) the fact that capacity of SharedLRUCache is higher than the capacity
configured if the configured capacity is not divisible by the the number
of CPUs.

For example, the capacity is set here:

  FLAGS_codegen_cache_capacity = 10;

However, if the capacity is not perfectly divisible by the number of CPUs,
actual capacity is slightly higher.

CPU 2 => Capacity 10, 5/shard
CPU 4 => Capacity 12, 3/shard
CPU 8 => Capacity 16, 2/shard

Due to this calculation:

const size_t per_shard = (capacity + (num_shards - 1)) / num_shards;

Additionally, the test depends on key skew. For example, I added some temporary
logging which logged each insert. Let's look at inserts into shard 0. Under the
4 CPU case, where each shard has a capacity of 3, shard 3 only sees three 
inserts
in pass 0 resulting in hits on the next pass:

pass: 0
Insert: hash = 460595995, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 326003543, shard = 0
pass: 1

Under the two CPU case, both shard's see more than 5 inserts, causing no cache 
hits.

pass: 0
Insert: hash = 1886151623, shard = 0
Insert: hash = 1395239506, shard = 0
Insert: hash = 1931154674, shard = 0
Insert: hash = 460595995, shard = 0
Insert: hash = 1440596256, shard = 0
Insert: hash = 1870227699, shard = 0
Insert: hash = 1163308785, shard = 0
Insert: hash = 1980547462, shard = 0
Insert: hash = 1106104592, shard = 0
Insert: hash = 1702846352, shard = 0
Insert: hash = 1230845174, shard = 0
Insert: hash = 1903296752, shard = 0
Insert: hash = 1395526688, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 1540160781, shard = 0
Insert: hash = 1377131543, shard = 0
Insert: hash = 2125989246, shard = 0
Insert: hash = 326003543, shard = 0
pass: 1
Insert: hash = 1886151623, shard = 0
Insert: hash = 1395239506, shard = 0
Insert: hash = 1931154674, shard = 0
Insert: hash = 460595995, shard = 0
Insert: hash = 1440596256, shard = 0
Insert: hash = 1870227699, shard = 0
Insert: hash = 1163308785, shard = 0
Insert: hash = 1980547462, shard = 0
Insert: hash = 1106104592, shard = 0
Insert: hash = 1702846352, shard = 0
Insert: hash = 1230845174, shard = 0
Insert: hash = 1903296752, shard = 0
Insert: hash = 1395526688, shard = 0
Insert: hash = 339190469, shard = 0
Insert: hash = 1540160781, shard = 0
Insert: hash = 1377131543, shard = 0
Insert: hash = 2125989246, shard = 0
Insert: hash = 326003543, shard = 0

AFAICT increasing the capacity of the cache doesn't impact correctness.

Change-Id: I81b70f63923078d449f6541a61b292517e49877d
---
M docs/installation.adoc
M src/kudu/codegen/codegen-test.cc
M src/kudu/gutil/sysinfo.cc
3 files changed, 10 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 


[kudu-CR] [java] KUDU-1563. Add support for INSERT IGNORE

2016-09-24 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [java] KUDU-1563. Add support for INSERT IGNORE
..

[java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 87 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 5
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] [python] KUDU-1563. Add support for INSERT IGNORE

2016-09-24 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [python] KUDU-1563. Add support for INSERT IGNORE
..

[python] KUDU-1563. Add support for INSERT IGNORE

Implements python support for the `INSERT IGNORE' operation

Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
---
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
M python/kudu/tests/test_client.py
4 files changed, 37 insertions(+), 2 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] KUDU-1563. Add support for INSERT IGNORE

2016-09-24 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: KUDU-1563. Add support for INSERT IGNORE
..

KUDU-1563. Add support for INSERT IGNORE

Add's `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/integration-tests/fuzz-itest.cc
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet-test-base.h
M src/kudu/tablet/tablet-test.cc
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/tablet_random_access-test.cc
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
24 files changed, 269 insertions(+), 47 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/91/4491/5
-- 
To view, visit http://gerrit.cloudera.org:8080/4491
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 5
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot


[kudu-CR] [WIP] KUDU-1563. Add support for INSERT IGNORE

2016-09-23 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [WIP] KUDU-1563. Add support for INSERT IGNORE
..

[WIP] KUDU-1563. Add support for INSERT IGNORE

Add's `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

The part I am most unsure about is returning an empty
OperationResultPB as I am not really sure where and how
the members of that operation are used. Spelunking didn't
clarify that for my newb eyes.

Also need some more tests.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
20 files changed, 189 insertions(+), 34 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 4
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot


[kudu-CR] [WIP][java] KUDU-1563. Add support for INSERT IGNORE

2016-09-23 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [WIP][java] KUDU-1563. Add support for INSERT IGNORE
..

[WIP][java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

TODO - more tests

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 87 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] [WIP][java] KUDU-1563. Add support for INSERT IGNORE

2016-09-22 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new patch set (#2).

Change subject: [WIP][java] KUDU-1563. Add support for INSERT IGNORE
..

[WIP][java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

TODO - more tests

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 86 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] [WIP][java] KUDU-1563. Add support for INSERT IGNORE

2016-09-22 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new change for review.

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

Change subject: [WIP][java] KUDU-1563. Add support for INSERT IGNORE
..

[WIP][java] KUDU-1563. Add support for INSERT IGNORE

Implements java support for the `INSERT IGNORE' operation

TODO - more tests

Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
4 files changed, 84 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib0cc4a533dfb01a883d347c9795c165aa8efa3fd
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 


[kudu-CR] [WIP][python] KUDU-1563. Add support for INSERT IGNORE

2016-09-22 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new change for review.

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

Change subject: [WIP][python] KUDU-1563. Add support for INSERT IGNORE
..

[WIP][python] KUDU-1563. Add support for INSERT IGNORE

Implements python support for the `INSERT IGNORE' operation

TODO - tests

Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
---
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
3 files changed, 24 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I6c45a50d4b87d8f7c4f0f83fbc72932d056d3a79
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 


[kudu-CR] [WIP] KUDU-1563. Add support for INSERT IGNORE

2016-09-22 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [WIP] KUDU-1563. Add support for INSERT IGNORE
..

[WIP] KUDU-1563. Add support for INSERT IGNORE

Add's `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef.

The part I am most unsure about is returning an empty
OperationResultPB as I am not really sure where and how
the members of that operation are used. Spelunking didn't
clarify that for my newb eyes.

Also need some more tests.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
20 files changed, 189 insertions(+), 35 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot


[kudu-CR] [WIP] KUDU-1563. Add support for INSERT IGNORE

2016-09-22 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [WIP] KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 2:

(1 comment)

I am going to push a new series of patches. Still a WIP though.

http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/client/client-test.cc
File src/kudu/client/client-test.cc:

Line 1830: ASSERT_TRUE(insert == nullptr) << "Successful insert should take 
ownership";
> Yeah too be honest, I just copied that portion of the assertion from the te
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-HasComments: Yes


[kudu-CR] [WIP] KUDU-1563. Add support for INSERT IGNORE

2016-09-22 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [WIP] KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 2:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/tablet/tablet.cc
File src/kudu/tablet/tablet.cc:

Line 406:   } else if (is_insert_ignore) {
> seems like it's time to have an enum to replace these bools
We are already comparing against and enum so I just removed these flags and use 
the enum directly.


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/tablet/tablet_bootstrap.cc
File src/kudu/tablet/tablet_bootstrap.cc:

PS2, Line 364: Note
> thanks for adding this, but might be  better to expand the comment a bit.
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Jean-Daniel Cryans 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-HasComments: Yes


[kudu-CR] [WIP] KUDU-1563. Add support for INSERT IGNORE

2016-09-21 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [WIP] KUDU-1563. Add support for INSERT IGNORE
..


Patch Set 2:

(12 comments)

Still have work todo, but wanted to wanted to get these comments out of my 
buffer.

http://gerrit.cloudera.org:8080/#/c/4491/2/python/kudu/__init__.py
File python/kudu/__init__.py:

PS2, Line 18: fr
> python client needs a test?
Yep as noted in my WIP commit message.


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/client/client-test.cc
File src/kudu/client/client-test.cc:

Line 1830: ASSERT_TRUE(insert == nullptr) << "Successful insert should take 
ownership";
> I don't this this assertion is doing anything useful. Whether or not the in
Yeah too be honest, I just copied that portion of the assertion from the test 
directly above.

Should I remove it?


Line 1842: // INSERT IGNORE does not result in error on duplicate
> nit" rephrase this comment a bit better?
Done


Line 1848: vector rows;
> anyway to consolidate the duplicated code below
Done


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/common/row_operations-test.cc
File src/kudu/common/row_operations-test.cc:

Line 130:   case 9:
> curious is this actually being used somewhere in the test?
I think the point of this test is to just execute the Add() method?


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/common/row_operations.cc
File src/kudu/common/row_operations.cc:

Line 313: const uint8_t* 
prototype_row_storage,
> incorrect wrapping. see https://google.github.io/styleguide/cppguide.html#F
Done


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/common/wire_protocol.proto
File src/kudu/common/wire_protocol.proto:

Line 173: // Used inserting a row and ignoring any duplicate row errors
> missing a word?
Done


Line 174: INSERT_IGNORE = 10;
> can you move this next to the plain types at the beginning, but still keep 
Done


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/tablet/local_tablet_writer.h
File src/kudu/tablet/local_tablet_writer.h:

Line 66:   Status InsertIgnore(const KuduPartialRow& row) {
> is this called anywhere?
Should be when I finish the tests.


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/tablet/row_op.h
File src/kudu/tablet/row_op.h:

Line 44:   void SetInsertIgnoreSucceeded();
> the impl of this does nothing but resetting the OperationResultPB, do we re
If we don't reset to OperationResultPB, I get a seg fault. This part I don't 
really understand so I'd be very very open to suggests or even just 
clarifications if:

1. I am doing the right thing.
2. If the members of OperationResultPB aren't set, what happens?


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/tablet/tablet.h
File src/kudu/tablet/tablet.h:

Line 402:   Status InsertOrInsertIgnoreOrUpsertUnlocked(WriteTransactionState 
*tx_state,
> I'm torn whether we should change the name of this function to add the igno
I did this but didn't like it. I am going to revert.


http://gerrit.cloudera.org:8080/#/c/4491/2/src/kudu/tablet/tablet_metrics.h
File src/kudu/tablet/tablet_metrics.h:

PS2, Line 50: scoped_refptr rows_insert_ignored;
> do we really need this in tablet metrics? what would be the use?
Yeah I can see folding this into rows_Inserted. At the same time, I like more 
transparency. If you feel strongly I can remove.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: David Ribeiro Alves 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-HasComments: Yes


[kudu-CR] [WIP] KUDU-1563. Add support for INSERT IGNORE

2016-09-21 Thread Brock Noland (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [WIP] KUDU-1563. Add support for INSERT IGNORE
..

[WIP] KUDU-1563. Add support for INSERT IGNORE

Add's `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef and
java patch 591c9ccb2a08bcfa4c.

The part I am most unsure about is returning an empty
OperationResultPB as I am not really sure where and how
the members of that operation are used. Spelunking didn't
clarify that for my newb eyes.

Also need some more tests. The python change is completely
untested.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
27 files changed, 322 insertions(+), 44 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot


[kudu-CR] [WIP] KUDU-1563. Add support for INSERT IGNORE

2016-09-20 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new change for review.

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

Change subject: [WIP] KUDU-1563. Add support for INSERT IGNORE
..

[WIP] KUDU-1563. Add support for INSERT IGNORE

Add's `INSERT IGNORE' operation which behaves like a
normal `INSERT' except in the case when a duplicate
row error would be raised by the primary key having been
previously inserted.

Follows upsert backend/c++ patch 56c431585ed7ad07ef and
java patch 591c9ccb2a08bcfa4c.

The part I am most unsure about is returning an empty
OperationResultPB as I am not really sure where and how
the members of that operation are used. Spelunking didn't
clarify that for my newb eyes.

Also need some more tests. The python change is completely
untested.

Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
---
A java/kudu-client/src/main/java/org/apache/kudu/client/InsertIgnore.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTable.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduSession.java
M python/kudu/__init__.py
M python/kudu/client.pyx
M python/kudu/libkudu_client.pxd
M src/kudu/client/client-test.cc
M src/kudu/client/client.cc
M src/kudu/client/client.h
M src/kudu/client/write_op.cc
M src/kudu/client/write_op.h
M src/kudu/common/row_operations-test.cc
M src/kudu/common/row_operations.cc
M src/kudu/common/row_operations.h
M src/kudu/common/wire_protocol.proto
M src/kudu/tablet/local_tablet_writer.h
M src/kudu/tablet/row_op.cc
M src/kudu/tablet/row_op.h
M src/kudu/tablet/tablet.cc
M src/kudu/tablet/tablet.h
M src/kudu/tablet/tablet_bootstrap.cc
M src/kudu/tablet/tablet_metrics.cc
M src/kudu/tablet/tablet_metrics.h
M src/kudu/tablet/transactions/transaction.cc
M src/kudu/tablet/transactions/transaction.h
M src/kudu/tablet/transactions/write_transaction.cc
27 files changed, 321 insertions(+), 44 deletions(-)


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5bfc35e9d27bd5e2d3375b68e6e4716ed671f36c
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 


[kudu-CR] [tests] fix tests - two cpus and fresh install

2016-09-20 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [tests] fix tests - two cpus and fresh install
..


Patch Set 2:

That does look similar. I can look into this more. It's actually bothering me 
that I cannot explain exactly why it fails.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Adar Dembo 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 
Gerrit-HasComments: No


[kudu-CR] [tests] fix tests - two cpus and fresh install

2016-09-20 Thread Brock Noland (Code Review)
Brock Noland has posted comments on this change.

Change subject: [tests] fix tests - two cpus and fresh install
..


Patch Set 2:

Yep sounds good to me. I haven't fully investigated why the change fixes the 
test for me.

The cache is sharded by the numbers of cpus. Based on the following comment I 
was thinking I am thinking I edge case where I didn't see any hits but would 
with 4-procs.

  // Otherwise, we expect to have gotten some hits.
  // If our cache were a perfect LRU implementation, then we would actually
  // expect 0 hits here as well, since we are accessing the entries in
  // exactly the same order as we inserted them, and thus would evict
  // an entry before we look for it again. But, our LRU cache is sharded
  // so we expect to get some hits on the second time.

based on that plus this comment:

  // Basic test for the CompilationManager code cache.
  // This runs a bunch of compilation tasks and ensures that the cache
  // sometimes hits on the second attempt for the same projection.

I am thinking it's a safe change, but obviously important to verify that is 
actually a safe change.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon 
Gerrit-Reviewer: Will Berkeley 
Gerrit-HasComments: No


[kudu-CR] [tests] fix tests - two cpus and fresh install

2016-09-18 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new change for review.

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

Change subject: [tests] fix tests - two cpus and fresh install
..

[tests] fix tests - two cpus and fresh install

CodegenTest.TestCodeCache - fails on my two cpu host, t2.large
increasing the cache size resolves this failure.

Other various tests fail due to lack of lsof and low resource
limits.

Change-Id: I81b70f63923078d449f6541a61b292517e49877d
---
M docs/installation.adoc
M src/kudu/codegen/codegen-test.cc
2 files changed, 4 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I81b70f63923078d449f6541a61b292517e49877d
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 


[kudu-CR](gh-pages) Simple typo fix in faq: 'arge' => 'large'

2016-08-08 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new change for review.

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

Change subject: Simple typo fix in faq: 'arge' => 'large'
..

Simple typo fix in faq: 'arge' => 'large'

Change-Id: I675d770f8fa484cf6fff7a7006f0dbd68eb51517
---
M faq.md
1 file changed, 1 insertion(+), 1 deletion(-)


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I675d770f8fa484cf6fff7a7006f0dbd68eb51517
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: gh-pages
Gerrit-Owner: Brock Noland 


[kudu-CR] build: Make 'download-thirdparty.sh' resilient to failure

2016-08-07 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new patch set (#2).

Change subject: build: Make 'download-thirdparty.sh' resilient to failure
..

build: Make 'download-thirdparty.sh' resilient to failure

Many contributors work at home on flaky internet connections. This
change does two things:

 - Use gtar on Mac, if available, as I've found it more resilient to
   failures than bsdtar. For example, I just spent 20 minutes debugging
   a build failure in cmake which was due to a truncated tar.

 - Exit if the script doesn't successfully extract, currently a warning
   prefixed with "Error" is logged but the process is left to fail with
   some unknown error later on

Change-Id: Ied07d236b1c9cd2eb78aef7ad372f8d835e09782
---
M thirdparty/download-thirdparty.sh
1 file changed, 7 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ied07d236b1c9cd2eb78aef7ad372f8d835e09782
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland 
Gerrit-Reviewer: Kudu Jenkins


[kudu-CR] build: Make 'download-thirdparty.sh' resilient to failure

2016-08-07 Thread Brock Noland (Code Review)
Brock Noland has uploaded a new change for review.

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

Change subject: build: Make 'download-thirdparty.sh' resilient to failure
..

build: Make 'download-thirdparty.sh' resilient to failure

Many contributors work at home on flaky internet connections. This
change does two things:

 - Use gtar on Mac, if available, as I've found it more resilient to
   failures than bsdtar. For example, I just spent 20 minutes debugging
   a build failure in cmake which was due to a truncated tar.

 - Exit if the script doesn't successfully extract a tar

Change-Id: Ied07d236b1c9cd2eb78aef7ad372f8d835e09782
---
M thirdparty/download-thirdparty.sh
1 file changed, 7 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ied07d236b1c9cd2eb78aef7ad372f8d835e09782
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Brock Noland