You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by GitBox <gi...@apache.org> on 2020/09/23 12:04:43 UTC

[GitHub] [hadoop-ozone] elek opened a new pull request #1443: HDDS-4270. Add more reusable byteman scripts to debug ofs/o3fs performance

elek opened a new pull request #1443:
URL: https://github.com/apache/hadoop-ozone/pull/1443


   
   I am using https://byteman.jboss.org to debug the performance of spark + teragen with different scripts. Some byteman scripts are already shared by HDDS-4095 or HDDS-342 but it seems to be a good practice to share the newer scripts to make it possible to reproduce performance problems.
   
   For using byteman with Ozone, see this video:
   https://www.youtube.com/watch?v=_4eYsH8F50E&list=PLCaV-jpCBO8U_WqyySszmbmnL-dhlzF6o&index=5
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-4270
   
   ## How was this patch tested?
   
   I used them during real k8s deployments:
   
   https://github.com/elek/ozone-perf-env


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] elek commented on a change in pull request #1443: HDDS-4270. Add more reusable byteman scripts to debug ofs/o3fs performance

Posted by GitBox <gi...@apache.org>.
elek commented on a change in pull request #1443:
URL: https://github.com/apache/hadoop-ozone/pull/1443#discussion_r494239916



##########
File path: dev-support/byteman/watchforcommit_all.btm
##########
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Measure overall time spent in Watch for commit calls
+
+RULE FileSystem.close
+CLASS org.apache.hadoop.fs.FileSystem
+METHOD close
+IF TRUE
+DO
+  System.out.println("Closing file system instance: " + System.identityHashCode($0));
+  System.out.println("   watchForCommit.call: " + readCounter("watchForCommit.call"));
+  System.out.println("   watchForCommit.allTime: " + readCounter("watchForCommit.allTime"))
+
+ENDRULE
+
+RULE BlockOutputStream.watchForCommit.Entry

Review comment:
       Yes, the chance is low, but let me add the same prefix to here, just to be on the safe side...




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] adoroszlai commented on pull request #1443: HDDS-4270. Add more reusable byteman scripts to debug ofs/o3fs performance

Posted by GitBox <gi...@apache.org>.
adoroszlai commented on pull request #1443:
URL: https://github.com/apache/hadoop-ozone/pull/1443#issuecomment-698385899


   Thanks @elek for updating the patch.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] adoroszlai commented on a change in pull request #1443: HDDS-4270. Add more reusable byteman scripts to debug ofs/o3fs performance

Posted by GitBox <gi...@apache.org>.
adoroszlai commented on a change in pull request #1443:
URL: https://github.com/apache/hadoop-ozone/pull/1443#discussion_r493694568



##########
File path: dev-support/byteman/ratis-flush.btm
##########
@@ -0,0 +1,35 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Turn of flush for Raits log

Review comment:
       Seems to be leftover comment from `ratis-no-flush.btm`.

##########
File path: dev-support/byteman/hcfs-read.btm
##########
@@ -0,0 +1,67 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Measure time spent in HCFS read implementations
+
+RULE FileSystem.close

Review comment:
       To be able to use multiple scripts, we need to avoid conflict of rule name:
   
   ```suggestion
   RULE hcfs-read-FileSystem.close
   ```

##########
File path: dev-support/byteman/watchforcommit_all.btm
##########
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Measure overall time spent in Watch for commit calls
+
+RULE FileSystem.close

Review comment:
       ```suggestion
   RULE watchforcommit_all-FileSystem.close
   ```

##########
File path: dev-support/byteman/watchforcommit_all.btm
##########
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Measure overall time spent in Watch for commit calls
+
+RULE FileSystem.close
+CLASS org.apache.hadoop.fs.FileSystem
+METHOD close
+IF TRUE
+DO
+  System.out.println("Closing file system instance: " + System.identityHashCode($0));
+  System.out.println("   watchForCommit.call: " + readCounter("watchForCommit.call"));
+  System.out.println("   watchForCommit.allTime: " + readCounter("watchForCommit.allTime"))
+
+ENDRULE
+
+RULE BlockOutputStream.watchForCommit.Entry

Review comment:
       I assume one would not use both watchforcommit scripts at the same time.  If we did, rule name would need to be unique.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] elek commented on a change in pull request #1443: HDDS-4270. Add more reusable byteman scripts to debug ofs/o3fs performance

Posted by GitBox <gi...@apache.org>.
elek commented on a change in pull request #1443:
URL: https://github.com/apache/hadoop-ozone/pull/1443#discussion_r494239916



##########
File path: dev-support/byteman/watchforcommit_all.btm
##########
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Measure overall time spent in Watch for commit calls
+
+RULE FileSystem.close
+CLASS org.apache.hadoop.fs.FileSystem
+METHOD close
+IF TRUE
+DO
+  System.out.println("Closing file system instance: " + System.identityHashCode($0));
+  System.out.println("   watchForCommit.call: " + readCounter("watchForCommit.call"));
+  System.out.println("   watchForCommit.allTime: " + readCounter("watchForCommit.allTime"))
+
+ENDRULE
+
+RULE BlockOutputStream.watchForCommit.Entry

Review comment:
       Yes, the chance is low, but let me add the same prefix to here, just to be on the safe side...




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] adoroszlai merged pull request #1443: HDDS-4270. Add more reusable byteman scripts to debug ofs/o3fs performance

Posted by GitBox <gi...@apache.org>.
adoroszlai merged pull request #1443:
URL: https://github.com/apache/hadoop-ozone/pull/1443


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] adoroszlai commented on pull request #1443: HDDS-4270. Add more reusable byteman scripts to debug ofs/o3fs performance

Posted by GitBox <gi...@apache.org>.
adoroszlai commented on pull request #1443:
URL: https://github.com/apache/hadoop-ozone/pull/1443#issuecomment-698385899


   Thanks @elek for updating the patch.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] adoroszlai merged pull request #1443: HDDS-4270. Add more reusable byteman scripts to debug ofs/o3fs performance

Posted by GitBox <gi...@apache.org>.
adoroszlai merged pull request #1443:
URL: https://github.com/apache/hadoop-ozone/pull/1443


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org