[ 
https://issues.apache.org/jira/browse/HBASE-2245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12836772#action_12836772
 ] 

Benoit Sigoure commented on HBASE-2245:
---------------------------------------

Yes I believe it works.  As I said, all the tests ({{ant test}}) passed.
{code:title=t.java|borderStyle=solid}
public class t {
  static public void main(String[]a) {
    boolean foo = true;
    foo &= true;
    System.out.println("foo: " + foo);
    foo &= false;
    System.out.println("foo: " + foo);
    foo &= true;
    System.out.println("foo: " + foo);
  }
}
{code}
{noformat}
$ javac t.java && java t
foo: true
foo: false
foo: false
{noformat}

[JLS 15.26 Assignment 
Operators|http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.26]
bq. {{AssignmentOperator: one of}} _[...]_ {{&=}} _[...]_
[JLS 15.26.2 Compound Assignment 
Operators|http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.26.2]
bq. A compound assignment expression of the form _E1 op= E2_ is equivalent to 
_E1 = (T)((E1) op (E2))_, where _T_ is the type of _E1_, except that _E1_ is 
evaluated only once.
[JLS 15.22.2 Boolean Logical Operators &, ^, and 
(pipe)|http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.22.2]
{quote}
When both operands of a {{&}} _[...]_ are of type {{boolean}} or {{Boolean}}, 
then the type of the bitwise operator expression is {{boolean}}. _[...]_
For {{&}}, the result value is {{true}} if both operand values are {{true}}; 
otherwise, the result is {{false}}.
{quote}

OK now I need to share how much I friggin hate JIRA.  http://ff.im/fqmdZ

> Unnecessary call to syncWal(region); in HRegionServer
> -----------------------------------------------------
>
>                 Key: HBASE-2245
>                 URL: https://issues.apache.org/jira/browse/HBASE-2245
>             Project: Hadoop HBase
>          Issue Type: Improvement
>          Components: regionserver
>    Affects Versions: 0.20.3
>            Reporter: Benoit Sigoure
>            Assignee: Benoit Sigoure
>            Priority: Minor
>             Fix For: 0.20.4, 0.21.0
>
>         Attachments: 0001-HBASE-2245-Don-t-call-syncWal-when-not-needed.patch
>
>
> Some methods unconditionally call {{syncWal}} on the region even though the 
> operation specifically asks to not use the WAL.
> The most obvious example is in {{incrementColumnValue}} where, regardless of 
> the value of the argument {{writeToWAL}}, we always call {{syncWal(region);}}.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to