[jira] [Created] (HADOOP-10687) improve Configuration.CACHE_CLASSES concurrentcy

2014-06-12 Thread Liang Xie (JIRA)
Liang Xie created HADOOP-10687:
--

 Summary: improve Configuration.CACHE_CLASSES concurrentcy
 Key: HADOOP-10687
 URL: https://issues.apache.org/jira/browse/HADOOP-10687
 Project: Hadoop Common
  Issue Type: Improvement
  Components: conf
Affects Versions: 2.4.0, 3.0.0
Reporter: Liang Xie
Assignee: Liang Xie


In one of my high concurrent HBase in-memory read only testing scenario, the 
following strace traces show CACHE_CLASSES becoming hotspot, since there's a 
synchronized or synchronizedMap, but for most of hadoop applications, when 
goes into getClassByNameOrNull(), most of code paths should expect there's a 
cached class already, that means it's a read mostly scenario, the write should 
be rare enough. So one possible optimization here is using concurrent 
weakHashMap, the MapMaker could do this.
ps: i added more debug logging above cache hit and Class.forName and reran 
my case, shows an expected result (almost all of them go to cache hit path), 
and TestConfiguration also passed in my box.


{code}
IPC Reader 3 on port 11600 daemon prio=10 tid=0x7ff2fcb41190 nid=0x5db4 
runnable [0x7ff238943000]

java.lang.Thread.State: RUNNABLE
 at java.util.Collections$SynchronizedMap.get(Collections.java:1979)
 - locked 0x0002788ab4a0 (a java.util.Collections$SynchronizedMap)
 at 
org.apache.hadoop.conf.Configuration.getClassByNameOrNull(Configuration.java:1505)
 at 
org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:88)
 at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:72)
 at 
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:130)
 at 
org.apache.hadoop.hbase.ipc.SecureServer$SecureConnection.processData(SecureServer.java:617)
 at 
org.apache.hadoop.hbase.ipc.SecureServer$SecureConnection.processOneRpc(SecureServer.java:596)
 at 
org.apache.hadoop.hbase.ipc.SecureServer$SecureConnection.saslReadAndProcess(SecureServer.java:362)
 at 
org.apache.hadoop.hbase.ipc.SecureServer$SecureConnection.readAndProcess(SecureServer.java:492)
 at 
org.apache.hadoop.hbase.ipc.HBaseServer$Listener.doRead(HBaseServer.java:775)
 at 
org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader.doRunLoop(HBaseServer.java:566)
 - locked 0x0002784211e8 (a 
org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader)
 at 
org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader.run(HBaseServer.java:541)
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
 at java.lang.Thread.run(Thread.java:662)
IPC Reader 1 on port 11600 daemon prio=10 tid=0x7ff2fc8cb2b0 nid=0x5db2 
waiting for monitor entry [0x7ff29006c000]

java.lang.Thread.State: BLOCKED (on object monitor)
 at java.util.Collections$SynchronizedMap.get(Collections.java:1979)
 - waiting to lock 0x0002788ab4a0 (a 
java.util.Collections$SynchronizedMap)
 at 
org.apache.hadoop.conf.Configuration.getClassByNameOrNull(Configuration.java:1505)
 at 
org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:88)
 at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:72)
 at 
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:130)
 at 
org.apache.hadoop.hbase.ipc.SecureServer$SecureConnection.processData(SecureServer.java:617)
 at 
org.apache.hadoop.hbase.ipc.SecureServer$SecureConnection.processOneRpc(SecureServer.java:596)
 at 
org.apache.hadoop.hbase.ipc.SecureServer$SecureConnection.saslReadAndProcess(SecureServer.java:362)
 at 
org.apache.hadoop.hbase.ipc.SecureServer$SecureConnection.readAndProcess(SecureServer.java:492)
 at 
org.apache.hadoop.hbase.ipc.HBaseServer$Listener.doRead(HBaseServer.java:775)
 at 
org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader.doRunLoop(HBaseServer.java:566)
 - locked 0x000278434980 (a 
org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader)
 at 
org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader.run(HBaseServer.java:541)
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
 at java.lang.Thread.run(Thread.java:662)
IPC Reader 0 on port 11600 daemon prio=10 tid=0x7ff2fc9b7630 nid=0x5db1 
waiting for monitor entry [0x7ff2900ad000]

java.lang.Thread.State: BLOCKED (on object monitor)
 at java.util.Collections$SynchronizedMap.get(Collections.java:1979)
 - waiting to lock 0x0002788ab4a0 (a 
java.util.Collections$SynchronizedMap)
 at 
org.apache.hadoop.conf.Configuration.getClassByNameOrNull(Configuration.java:1505)
 at 

[jira] [Resolved] (HADOOP-10640) Implement Namenode RPCs in HDFS native client

2014-06-12 Thread Colin Patrick McCabe (JIRA)

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

Colin Patrick McCabe resolved HADOOP-10640.
---

   Resolution: Fixed
Fix Version/s: HADOOP-10388

 Implement Namenode RPCs in HDFS native client
 -

 Key: HADOOP-10640
 URL: https://issues.apache.org/jira/browse/HADOOP-10640
 Project: Hadoop Common
  Issue Type: Sub-task
  Components: native
Affects Versions: HADOOP-10388
Reporter: Colin Patrick McCabe
Assignee: Colin Patrick McCabe
 Fix For: HADOOP-10388

 Attachments: HADOOP-10640-pnative.001.patch, 
 HADOOP-10640-pnative.002.patch, HADOOP-10640-pnative.003.patch, 
 HADOOP-10640-pnative.004.patch


 Implement the parts of libhdfs that just involve making RPCs to the Namenode, 
 such as mkdir, rename, etc.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (HADOOP-10447) Implement C code for parsing Hadoop / HDFS URIs

2014-06-12 Thread Colin Patrick McCabe (JIRA)

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

Colin Patrick McCabe resolved HADOOP-10447.
---

Resolution: Duplicate
  Assignee: Colin Patrick McCabe

 Implement C code for parsing Hadoop / HDFS URIs
 ---

 Key: HADOOP-10447
 URL: https://issues.apache.org/jira/browse/HADOOP-10447
 Project: Hadoop Common
  Issue Type: Sub-task
Reporter: Colin Patrick McCabe
Assignee: Colin Patrick McCabe

 We need some glue code for parsing Hadoop or HDFS URIs in C.  Probably we 
 should just put a small 'Path' wrapper around a URI parsing library like 
 http://uriparser.sourceforge.net/ (BSD licensed)



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (HADOOP-10446) native code for reading Hadoop configuration XML files

2014-06-12 Thread Colin Patrick McCabe (JIRA)

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

Colin Patrick McCabe resolved HADOOP-10446.
---

  Resolution: Duplicate
   Fix Version/s: HADOOP-10388
Assignee: Colin Patrick McCabe
Target Version/s: HADOOP-10388

 native code for reading Hadoop configuration XML files
 --

 Key: HADOOP-10446
 URL: https://issues.apache.org/jira/browse/HADOOP-10446
 Project: Hadoop Common
  Issue Type: Sub-task
Reporter: Colin Patrick McCabe
Assignee: Colin Patrick McCabe
 Fix For: HADOOP-10388


 We need to have a way to read Hadoop configuration XML files in the native 
 HDFS and YARN clients.  This will allow those clients to discover the 
 locations of NameNodes, YARN daemons, and other configuration settings, etc. 
 etc.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Created] (HADOOP-10688) Expose thread-level FileSystem StatisticsData

2014-06-12 Thread Sandy Ryza (JIRA)
Sandy Ryza created HADOOP-10688:
---

 Summary: Expose thread-level FileSystem StatisticsData
 Key: HADOOP-10688
 URL: https://issues.apache.org/jira/browse/HADOOP-10688
 Project: Hadoop Common
  Issue Type: Improvement
  Components: fs
Reporter: Sandy Ryza
Assignee: Sandy Ryza


FileSystems collect data on the bytes read and written by each thread.  It 
would be helpful for it to make this data public.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (HADOOP-10663) Path.getFileSystem should identify Windows drive (c:) like files and return the localFS

2014-06-12 Thread Chris Nauroth (JIRA)

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

Chris Nauroth resolved HADOOP-10663.


Resolution: Won't Fix

Thanks, Chris.  Resolving.

 Path.getFileSystem should identify Windows drive (c:) like files and return 
 the localFS
 ---

 Key: HADOOP-10663
 URL: https://issues.apache.org/jira/browse/HADOOP-10663
 Project: Hadoop Common
  Issue Type: Bug
Affects Versions: 3.0.0
Reporter: Remus Rusanu
Assignee: Remus Rusanu
 Attachments: HADOOP-10663.1.patch


 While investigating the problem with MAPREDUCE-5912 I considered that the 
 fact that asking a Windows specific Path to get its file system should not 
 return the default FS, but the localFS. Specifically, I believe that 
 Path.initialize should identify such names as belonging to the 'file://' 
 scheme (when null) and so create appropriate URIs.
 I do not have the know-how to evaluate the bigger impact of such a change.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Created] (HADOOP-10690) Lack of synchronization on access to InputStream in NativeAzureFileSystem#NativeAzureFsInputStream#close()

2014-06-12 Thread Ted Yu (JIRA)
Ted Yu created HADOOP-10690:
---

 Summary: Lack of synchronization on access to InputStream in 
NativeAzureFileSystem#NativeAzureFsInputStream#close()
 Key: HADOOP-10690
 URL: https://issues.apache.org/jira/browse/HADOOP-10690
 Project: Hadoop Common
  Issue Type: Bug
Reporter: Ted Yu
Priority: Minor


{code}
public void close() throws IOException {
  in.close();
}
{code}
The close() method should be protected by synchronized keyword.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (HADOOP-10514) Common side changes to support HDFS extended attributes (HDFS-2006)

2014-06-12 Thread Yi Liu (JIRA)

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

Yi Liu resolved HADOOP-10514.
-

  Resolution: Fixed
Hadoop Flags: Reviewed

 Common side changes to support  HDFS extended attributes (HDFS-2006)
 

 Key: HADOOP-10514
 URL: https://issues.apache.org/jira/browse/HADOOP-10514
 Project: Hadoop Common
  Issue Type: New Feature
  Components: fs
Affects Versions: HDFS XAttrs (HDFS-2006)
Reporter: Uma Maheswara Rao G
Assignee: Yi Liu

 This is an umbrella issue for tracking all Hadoop Common changes required to 
 support HDFS extended attributes implementation



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (HADOOP-10682) Metrics are not output in trunk

2014-06-12 Thread Akira AJISAKA (JIRA)

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

Akira AJISAKA resolved HADOOP-10682.


Resolution: Not a Problem

It's caused by the change of HADOOP-10468. Regarding the issue, we should set 
the property case sensitive from 2.5.0. Closing.

 Metrics are not output in trunk
 ---

 Key: HADOOP-10682
 URL: https://issues.apache.org/jira/browse/HADOOP-10682
 Project: Hadoop Common
  Issue Type: Bug
  Components: metrics
Reporter: Akira AJISAKA

 Metrics are not output in trunk by the following configuration:
 {code}
 *.sink.file.class=org.apache.Hadoop.metrics2.sink.FileSink
 *.period=10
 namenode.sink.file.filename=namenode-metrics.out
 {code}
 The below change worked well.
 {code}
 - namenode.sink.file.filename=namenode-metrics.out
 + NameNode.sink.file.filename=namenode-metrics.out
 {code}
 It means that an old configuration doesn't work on trunk. We should fix it or 
 document to use NameNode.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Created] (HADOOP-10692) Update hadoop-metrics2.properties examples to be case sensitive

2014-06-12 Thread Akira AJISAKA (JIRA)
Akira AJISAKA created HADOOP-10692:
--

 Summary: Update hadoop-metrics2.properties examples to be case 
sensitive
 Key: HADOOP-10692
 URL: https://issues.apache.org/jira/browse/HADOOP-10692
 Project: Hadoop Common
  Issue Type: Bug
  Components: conf, metrics
Affects Versions: 2.5.0
Reporter: Akira AJISAKA
Assignee: Akira AJISAKA


After HADOOP-10468, the prefix of the properties in metrics2 become case 
sensitive. We should also update hadoop-metrics2.properties examples to be case 
sensitive.



--
This message was sent by Atlassian JIRA
(v6.2#6252)