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

Eric Charles commented on HBASE-6581:
-------------------------------------

- FSHLog#syncer has some synchronized block, but still one call to PBLW.sync() 
is not in a synchronized block. so this maybe a problem. I guess we can't 
change like that the unsynchronized code block FSHLog (line 1068) without 
side-effect (the logic seems there quite tricky).

- I looked around (web, book...) to know if method.invoke(...) is safe. It 
sounds to me it is not like a direct method call, the state of that object may 
change and may thus be unsafe (no idea). Maybe someone can shed light on this?

- I looked in the hbase code for other Method objects as field. I found one in 
TableRecordReaderImpl where is getCounter method is stored as field. No 
particular guard is there when invoke(...) is called on it. But that's for sure 
a less sensible function and maybe the threadsafety is naturally ensured by the 
calle (nextKeyValue).

- Side note: this method object came because I wanted to avoid duplicating all 
the hadoop2-compat classes in the hadoop3-compat module. If we agree to 
copy/paste them, the method object and our questions disappear (although I 
would like to have answers on them). I don't anyway duplicating is the way to 
go.
                
> Build with hadoop.profile=3.0
> -----------------------------
>
>                 Key: HBASE-6581
>                 URL: https://issues.apache.org/jira/browse/HBASE-6581
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Eric Charles
>            Assignee: Eric Charles
>         Attachments: HBASE-6581-1.patch, HBASE-6581-20130821.patch, 
> HBASE-6581-2.patch, HBASE-6581-3.patch, HBASE-6581-4.patch, HBASE-6581.diff, 
> HBASE-6581.diff
>
>
> Building trunk with hadoop.profile=3.0 gives exceptions (see [1]) due to 
> change in the hadoop maven modules naming (and also usage of 3.0-SNAPSHOT 
> instead of 3.0.0-SNAPSHOT in hbase-common).
> I can provide a patch that would move most of hadoop dependencies in their 
> respective profiles and will define the correct hadoop deps in the 3.0 
> profile.
> Please tell me if that's ok to go this way.
> Thx, Eric
> [1]
> $ mvn clean install -Dhadoop.profile=3.0
> [INFO] Scanning for projects...
> [ERROR] The build could not read 3 projects -> [Help 1]
> [ERROR]   
> [ERROR]   The project org.apache.hbase:hbase-server:0.95-SNAPSHOT 
> (/d/hbase.svn/hbase-server/pom.xml) has 3 errors
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-common:jar is missing. @ line 655, column 21
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-annotations:jar is missing. @ line 659, column 21
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-minicluster:jar is missing. @ line 663, column 21
> [ERROR]   
> [ERROR]   The project org.apache.hbase:hbase-common:0.95-SNAPSHOT 
> (/d/hbase.svn/hbase-common/pom.xml) has 3 errors
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-common:jar is missing. @ line 170, column 21
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-annotations:jar is missing. @ line 174, column 21
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-minicluster:jar is missing. @ line 178, column 21
> [ERROR]   
> [ERROR]   The project org.apache.hbase:hbase-it:0.95-SNAPSHOT 
> (/d/hbase.svn/hbase-it/pom.xml) has 3 errors
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-common:jar is missing. @ line 220, column 18
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-annotations:jar is missing. @ line 224, column 21
> [ERROR]     'dependencies.dependency.version' for 
> org.apache.hadoop:hadoop-minicluster:jar is missing. @ line 228, column 21
> [ERROR] 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to