HBaseConAsia 2018 CFP still open

2018-06-11 Thread Yu Li
Hi All,

HBaseConAsia2018[1] will be held on Aug. 17th in Beijing, China, and the
call for proposals is still open[2]. So far we have received proposals from
many big companies like Alibaba/Xiaomi/Huawei/DiDi/Intel/Pintrest etc. and
we are expecting more!

HBaseConAsia2018[1]将于8月17日在中国北京召开,现仍在面向全球征集演讲议题[2]。目前为止我们已经收到阿里巴巴/小米/华为/滴滴/英特尔/Pintrest等国内外多家公司的投稿,但我们期待更多人的参与!

This year we don't only have track on HBase internal (dev), but also on
HBase ecology/solution/applications. We encourage all users building
solution/application on top of HBase to contribute a talk[3] and share your
experience. We are also preparing some live broadcasting so the
presentation could probably receive far more audience.

今年大会的主题不仅限于HBase内部(开发/运维)议题,还包括HBase生态/解决方案/应用。
我们鼓励所有基于HBase构建解决方案(内部或者云上)或者业务应用的用户提交议题
[3],来和大家分享相关的经验。我们也在积极准备并很有可能在大会当天提供线上直播,这将极大的增加大会观众的人数和影响力。

Currently only abstracts are required for PC to review and if accepted
there should be enough time to prepare the presentation. And we hope the
abstracts/slides written in English but not required, so please don't be
blocked by language.

目前仅需要提交摘要即可,大会组织委员会审核并接收之后(有一定的淘汰率)有充足的时间准备演讲。另外虽然我们希望提交的摘要/演讲ppt使用英文撰写,但
并不强制要求,因此希望大家不要因为语言的问题阻止自己提交议题的脚步。

More details please refer to our official website[1]. Thanks and please
start submitting your talks!

更多细节请关注官方主页[1]。各位,是时侯表演真正的技术了,请踊跃提交议题吧!谢谢大家!

- Yu (on behalf of the HBase PMC)

[1] https://hbase.apache.org/hbaseconasia-2018/
[2] *https://easychair.org/cfp/hbaseconasia-2018
*
[3] https://easychair.org/conferences/?conf=hbaseconasia2018


[jira] [Created] (HBASE-20718) Implement a MemStore with CCSMap for better performance

2018-06-11 Thread Yu Li (JIRA)
Yu Li created HBASE-20718:
-

 Summary: Implement a MemStore with CCSMap for better performance
 Key: HBASE-20718
 URL: https://issues.apache.org/jira/browse/HBASE-20718
 Project: HBase
  Issue Type: Sub-task
Reporter: Yu Li
Assignee: Chance Li


As described in HBASE-20312, this task targets at adopting CCSMap into hbase: 
implementing the CCSLMMemStore with CCSMap for better performance



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (HBASE-20717) Implement CCSMap - a better concurrent map with compacted data structure

2018-06-11 Thread Yu Li (JIRA)
Yu Li created HBASE-20717:
-

 Summary: Implement CCSMap - a better concurrent map with compacted 
data structure
 Key: HBASE-20717
 URL: https://issues.apache.org/jira/browse/HBASE-20717
 Project: HBase
  Issue Type: Sub-task
Reporter: Yu Li
Assignee: Chance Li


As described in HBASE-20312, we will implement the base data structure of 
CCSMap and relative unit tests in this task.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[ANNOUNCE] Apache Phoenix 4.14 released

2018-06-11 Thread James Taylor
The Apache Phoenix team is pleased to announce the immediate availability
of the 4.14.0 release. Apache Phoenix enables SQL-based OLTP and
operational analytics for Apache Hadoop using Apache HBase as its backing
store and providing integration with other projects in the Apache ecosystem
such as Spark, Hive, Pig, Flume, and MapReduce.

Highlights of the release include:

* Support for HBase 1.4
* Support for CDH 5.11.2, 5.12.2, 5.13.2, and 5.14.2
* Support for GRANT and REVOKE commands
* Secondary index improvements

For more details, visit our blog here [1] and download source and binaries
here [2].

Thanks,
James (on behalf of the Apache Phoenix team)

[1] https://blogs.apache.org/phoenix/entry/announcing-phoenix-4-14-released
[2] http://phoenix.apache.org/download.html


Re: mrapp-generated-classpath

2018-06-11 Thread Mike Drob
I did not know that is where it came from! I tried git blame on all the
modules but everything looked like it was just copied from a different
module so I was chasing geese. No patient zero, if you will allow the
analogy.

So it's for a unit test, looks like it will be easy to verify if the
changes break things.

On Mon, Jun 11, 2018 at 6:18 PM, Stack  wrote:

> On Fri, Jun 8, 2018 at 9:54 AM Mike Drob  wrote:
>
> > We generate this in almost all of our modules, including ones that seem
> to
> > be completely unrelated to MR stuff. Is this a vestigal copy-paste or am
> I
> > missing what it is used for? I can't find any additional references to it
> > anywhere...
> >
>
>
> You saw where it came in I presume (HBASE-5317).
>
> I vote its presence the result of mistaken copy/paste.
>
> S
>
>
>
> >
> > Mike
> >
>


Re: mrapp-generated-classpath

2018-06-11 Thread Stack
On Fri, Jun 8, 2018 at 9:54 AM Mike Drob  wrote:

> We generate this in almost all of our modules, including ones that seem to
> be completely unrelated to MR stuff. Is this a vestigal copy-paste or am I
> missing what it is used for? I can't find any additional references to it
> anywhere...
>


You saw where it came in I presume (HBASE-5317).

I vote its presence the result of mistaken copy/paste.

S



>
> Mike
>


[jira] [Reopened] (HBASE-20672) Create new HBase metrics ReadRequestRate and WriteRequestRate that reset at every monitoring interval

2018-06-11 Thread Ted Yu (JIRA)


 [ 
https://issues.apache.org/jira/browse/HBASE-20672?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu reopened HBASE-20672:


> Create new HBase metrics ReadRequestRate and WriteRequestRate that reset at 
> every monitoring interval
> -
>
> Key: HBASE-20672
> URL: https://issues.apache.org/jira/browse/HBASE-20672
> Project: HBase
>  Issue Type: Improvement
>  Components: metrics
>Reporter: Ankit Jain
>Assignee: Ankit Jain
>Priority: Minor
> Fix For: 3.0.0
>
> Attachments: HBASE-20672.branch-1.001.patch, 
> HBASE-20672.master.001.patch, HBASE-20672.master.002.patch, 
> HBASE-20672.master.003.patch, hits1vs2.4.40.400.png
>
>
> Hbase currently provides counter read/write requests (ReadRequestCount, 
> WriteRequestCount). That said it is not easy to use counter that reset only 
> after a restart of the service, we would like to expose 2 new metrics in 
> HBase to provide ReadRequestRate and WriteRequestRate at region server level.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (HBASE-20716) Unsafe access cleanup

2018-06-11 Thread stack (JIRA)
stack created HBASE-20716:
-

 Summary: Unsafe access cleanup
 Key: HBASE-20716
 URL: https://issues.apache.org/jira/browse/HBASE-20716
 Project: HBase
  Issue Type: Bug
  Components: Performance
Reporter: stack


We have two means of getting at unsafe; UnsafeAccess and then internal to the 
Bytes class. They are effectively doing the same thing. We should have one 
avenue to Unsafe only.

Many of our paths to Unsafe via UnsafeAccess traverse flags to check if access 
is available, if it is aligned and the order in which words are written on the 
machine. Each check costs -- especially if done millions of times a second -- 
and on occasion adds bloat in hot code paths. The unsafe access inside Bytes 
checks on startup what the machine is capable off and then does a static assign 
of the appropriate class-to-use from there on out. UnsafeAccess does not do 
this running the checks everytime. Would be good to have the Bytes behavior 
pervasive.

The benefit of one access to Unsafe only is plain. The benefits we gain 
removing checks will be harder to measure though should be plain when you 
disassemble a hot-path; in a (very) rare case, the saved byte codes could be 
the difference between inlining or not.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


Re: [VOTE] Apache HBase 1.4.5 rc0

2018-06-11 Thread Josh Elser
PMC -- please check out this rc0 if you can as we have already elapsed 
the 72hr minimum window.


Thanks, Ted, for the vote already.

On 6/7/18 7:35 PM, Josh Elser wrote:

Hi,

Please vote to approve the following as Apache HBase 1.4.5

https://dist.apache.org/repos/dist/dev/hbase/1.4.5rc0/

Per usual, there is a source release as well as a convenience binary

This is built with JDK7 from the commit: 
https://git-wip-us.apache.org/repos/asf?p=hbase.git;a=commit;h=74596816c85f1256ec8a302efecc0144f2ea76fa 
(there is a corresponding tag "1.4.5rc0" for convenience)


hbase-1.4.5-bin.tar.gz: 7C8EFD79 CD5EAEFF 92F2E093 8AC8448C ED5717BD 
4C8D2C43
     B95F804B 003E2126 9235EFE0 ABE61302 B81B30B1 
F9F4A785

     17191950 2F436F64 19F50E53 999B5272
hbase-1.4.5-src.tar.gz: FED89273 FFA746DA D868DF79 7E46DB75 D0908419 
F3D418FF
     73068583 A6F1DCB2 61BD2389 12DCE920 F8800CAE 
23631343

     DB7601F4 F43331A4 678135E5 E5C566C4

There is also a Maven staging repository for this release:
https://repository.apache.org/content/repositories/orgapachehbase-1219

This vote will be open for at least 72 hours (2018/06/11  UTC).

- Josh (on behalf of the HBase PMC)




[jira] [Created] (HBASE-20715) REST curl command for create namespace with "Content-Type: text/xml" specified (mistakenly) results in a 400 Bad Request

2018-06-11 Thread Nihal Jain (JIRA)
Nihal Jain created HBASE-20715:
--

 Summary: REST curl command for create namespace with 
"Content-Type: text/xml" specified (mistakenly) results in a 400 Bad Request
 Key: HBASE-20715
 URL: https://issues.apache.org/jira/browse/HBASE-20715
 Project: HBase
  Issue Type: Task
  Components: documentation, REST
Reporter: Nihal Jain


I have a habit of setting "Content-Type: text/xml" for curl commands. Today, I 
had a bad time debugging the 400 error for below command. Finally, this 
discussion helped me in resolving the problem.

As pointed out by [~mwarhaftig] and [~misty] in their discussion in 
HBASE-14147, a curl request of the following form will throw a {{400 BAD 
REQUEST}}
{code:java}
curl -vi -X POST -H "Accept: text/xml" -H "Content-Type: text/xml"  
"http://my_server:20550/namespaces/new_ns2/;
{code}
I think we should document this in the description for "Create a new namespace" 
explicitly mentioning that users should take care "Content-Type" is not set for 
this particular command.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


Re: Failure: HBase Generate Website

2018-06-11 Thread Ted Yu
Build #1372 passed.

On Mon, Jun 11, 2018 at 7:51 AM, Apache Jenkins Server <
jenk...@builds.apache.org> wrote:

> Build status: Failure
>
> The HBase website has not been updated to incorporate HBase commit
> ${CURRENT_HBASE_COMMIT}.
>
> See https://builds.apache.org/job/hbase_generate_website/1371/console


[jira] [Created] (HBASE-20714) Document REST curl commands for supported (but missing in docs) operations

2018-06-11 Thread Nihal Jain (JIRA)
Nihal Jain created HBASE-20714:
--

 Summary: Document REST curl commands for supported (but missing in 
docs) operations
 Key: HBASE-20714
 URL: https://issues.apache.org/jira/browse/HBASE-20714
 Project: HBase
  Issue Type: Task
  Components: REST
Reporter: Nihal Jain


While going through some recent REST JIRAs, I found REST supports row 
operations like delete, append, increment etc.

I think we should document all such missing  ops.

Others can give some input regarding other missing ops apart from the 
above-mentioned ones.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


Failure: HBase Generate Website

2018-06-11 Thread Apache Jenkins Server
Build status: Failure

The HBase website has not been updated to incorporate HBase commit 
${CURRENT_HBASE_COMMIT}.

See https://builds.apache.org/job/hbase_generate_website/1371/console

[jira] [Created] (HBASE-20713) Revisit why to removeFromRunQueue in MasterProcedureExecutor's doPoll method

2018-06-11 Thread Guanghao Zhang (JIRA)
Guanghao Zhang created HBASE-20713:
--

 Summary: Revisit why to removeFromRunQueue in 
MasterProcedureExecutor's doPoll method 
 Key: HBASE-20713
 URL: https://issues.apache.org/jira/browse/HBASE-20713
 Project: HBase
  Issue Type: Bug
Reporter: Guanghao Zhang


https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.java#L210
{code:java}
if (rq.isEmpty() || xlockReq) {
  removeFromRunQueue(fairq, rq);
} else if (rq.getLockStatus().hasParentLock(pollResult)) {
  // if the rq is in the fairq because of runnable child
  // check if the next procedure is still a child.
  // if not, remove the rq from the fairq and go back to the xlock state
  Procedure nextProc = rq.peek();
  if (nextProc != null && !Procedure.haveSameParent(nextProc, pollResult)) {
removeFromRunQueue(fairq, rq);
  }
}
{code}
Here is the comment of why to remove from run queue. If I am not wrong, here's 
assumption is the parent procedure should require exclusive lock. So if the 
nextProc is a child but has different parent with current procedure, we can 
remove it from run queue.
But there maybe three type procedure. Procedure A's child is Procedure B. 
Procedure's child is Procedure C. And only Procedure A need exclusive lock and 
Procedure B,C don't require exclusive lock. The 
condition(!Procedure.haveSameParent(nextProc, pollResult)) is not right for 
this case?
FYI [~stack]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (HBASE-20675) The scan parameter include_stop_row=true does not work

2018-06-11 Thread Peter Somogyi (JIRA)


 [ 
https://issues.apache.org/jira/browse/HBASE-20675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Peter Somogyi resolved HBASE-20675.
---
Resolution: Invalid
  Assignee: Peter Somogyi

The feature works correctly using 2.0.0 client and server.

> The scan parameter include_stop_row=true does not work
> --
>
> Key: HBASE-20675
> URL: https://issues.apache.org/jira/browse/HBASE-20675
> Project: HBase
>  Issue Type: Bug
>  Components: Client
>Affects Versions: 2.0.0
> Environment: HBase-Client Version: 2.0.0
> HBase Version: 1.2.0-cdh5.7.5
>Reporter: Jermy Li
>Assignee: Peter Somogyi
>Priority: Major
>
> we use 
> [withStopRow|https://hbase.apache.org/2.0/apidocs/org/apache/hadoop/hbase/client/Scan.html#withStopRow-byte:A-boolean-]
>  API to scan a rowkey range [startrow, stoprow], both inclusive, but the 
> server can't return the last row including stoprow, however there is no 
> exception.
> For example, the there are the following rows in hbase:
> ||rowkey||CF+qualifier+value||
> |1|{value1}|
> |2|{value2}
> |3|{value3}|
> {code:java}
> // Do scan like this
> Scan scan = new Scan();
> scan.withStartRow(bytes(1), true);
> scan.withStopRow(bytes(3), true);
> {code}
> The result returned only contains the first two rows: “1” and “2”, no “3”.
> Thanks.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)