[
https://issues.apache.org/jira/browse/HDDS-12159?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17923859#comment-17923859
]
Wei-Chiu Chuang commented on HDDS-12159:
----------------------------------------
Stacetrace for posterity:
{noformat}
"KeyDeletingService#0" #1032 daemon prio=5 os_prio=0 cpu=1446151362.28ms
elapsed=1475807.36s tid=0x00007f02eb029000 nid=0x1713bf runnable
[0x00007f02f69b80
00]
java.lang.Thread.State: RUNNABLE
at org.rocksdb.RocksIterator.seekDirect0(Native Method)
at org.rocksdb.AbstractRocksIterator.seek(AbstractRocksIterator.java:73)
at
org.apache.hadoop.hdds.utils.db.RDBStoreCodecBufferIterator.seek0(RDBStoreCodecBufferIterator.java:125)
at
org.apache.hadoop.hdds.utils.db.RDBStoreCodecBufferIterator.seek0(RDBStoreCodecBufferIterator.java:30)
at
org.apache.hadoop.hdds.utils.db.RDBStoreAbstractIterator.seek(RDBStoreAbstractIterator.java:134)
at
org.apache.hadoop.hdds.utils.db.RDBStoreAbstractIterator.seek(RDBStoreAbstractIterator.java:33)
at
org.apache.hadoop.hdds.utils.db.TypedTable$RawIterator.seek(TypedTable.java:650)
at
org.apache.hadoop.hdds.utils.db.TypedTable$RawIterator.seek(TypedTable.java:619)
at
org.apache.hadoop.ozone.om.KeyManagerImpl.gatherSubDirsWithIterator(KeyManagerImpl.java:1884)
at
org.apache.hadoop.ozone.om.KeyManagerImpl.getPendingDeletionSubDirs(KeyManagerImpl.java:1871)
at
org.apache.hadoop.ozone.om.service.AbstractKeyDeletingService.prepareDeleteDirRequest(AbstractKeyDeletingService.java:355)
at
org.apache.hadoop.ozone.om.service.DirectoryDeletingService$DirDeletingTask.call(DirectoryDeletingService.java:180)
at
org.apache.hadoop.hdds.utils.BackgroundService$PeriodicalTask.lambda$run$0(BackgroundService.java:121)
at
org.apache.hadoop.hdds.utils.BackgroundService$PeriodicalTask$$Lambda$354/0x00007f02faa48cb0.run(Unknown
Source)
at
java.util.concurrent.CompletableFuture$AsyncRun.run([email protected]/CompletableFuture.java:1736)
at
java.util.concurrent.Executors$RunnableAdapter.call([email protected]/Executors.java:515)
at
java.util.concurrent.FutureTask.run([email protected]/FutureTask.java:264)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run([email protected]/ScheduledThreadPoolExecutor.java:304)
at
java.util.concurrent.ThreadPoolExecutor.runWorker([email protected]/ThreadPoolExecutor.java:1128)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run([email protected]/ThreadPoolExecutor.java:628)
at java.lang.Thread.run([email protected]/Thread.java:829) {noformat}
{noformat}
"OM StateMachine ApplyTransaction Thread - 0" #1411 daemon prio=5 os_prio=0
cpu=111238927.65ms elapsed=1475624.54s tid=0x00007f1acc403000 nid=0x172dbf runna
ble [0x00007f02d0e54000]
java.lang.Thread.State: RUNNABLE
at org.rocksdb.RocksIterator.seekToFirst0(Native Method)
at
org.rocksdb.AbstractRocksIterator.seekToFirst(AbstractRocksIterator.java:48)
at
org.apache.hadoop.hdds.utils.db.RDBStoreAbstractIterator.seekToFirst(RDBStoreAbstractIterator.java:115)
at
org.apache.hadoop.hdds.utils.db.RDBStoreCodecBufferIterator.<init>(RDBStoreCodecBufferIterator.java:103)
at org.apache.hadoop.hdds.utils.db.RDBTable.iterator(RDBTable.java:232)
at
org.apache.hadoop.hdds.utils.db.TypedTable.iterator(TypedTable.java:418)
at
org.apache.hadoop.hdds.utils.db.TypedTable.iterator(TypedTable.java:409)
at
org.apache.hadoop.hdds.utils.db.TypedTable.iterator(TypedTable.java:55)
at
org.apache.hadoop.ozone.om.request.file.OMFileRequest.checkSubFileExists(OMFileRequest.java:923)
at
org.apache.hadoop.ozone.om.request.file.OMFileRequest.hasChildren(OMFileRequest.java:846)
at
org.apache.hadoop.ozone.om.OzonePrefixPathImpl.<init>(OzonePrefixPathImpl.java:77)
at
org.apache.hadoop.ozone.om.request.OMClientRequest.checkACLsWithFSO(OMClientRequest.java:248)
at
org.apache.hadoop.ozone.om.request.key.OMKeyRenameRequestWithFSO.validateAndUpdateCache(OMKeyRenameRequestWithFSO.java:119)
at
org.apache.hadoop.ozone.protocolPB.OzoneManagerRequestHandler.handleWriteRequest(OzoneManagerRequestHandler.java:378)
at
org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine.runCommand(OzoneManagerStateMachine.java:560)
at
org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine.lambda$1(OzoneManagerStateMachine.java:353)
at
org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine$$Lambda$1031/0x00007f02d191d500.get(Unknown
Source)
at
java.util.concurrent.CompletableFuture$AsyncSupply.run([email protected]/CompletableFuture.java:1700)
at
java.util.concurrent.ThreadPoolExecutor.runWorker([email protected]/ThreadPoolExecutor.java:1128)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run([email protected]/ThreadPoolExecutor.java:628)
at java.lang.Thread.run([email protected]/Thread.java:829) {noformat}
> Remove unnecessary iterator seek in fileTable and DirectoryTable uses
> ---------------------------------------------------------------------
>
> Key: HDDS-12159
> URL: https://issues.apache.org/jira/browse/HDDS-12159
> Project: Apache Ozone
> Issue Type: Bug
> Reporter: Tejaskriya Madhan
> Assignee: Tejaskriya Madhan
> Priority: Major
> Labels: pull-request-available
>
> In
> `org.apache.hadoop.ozone.om.request.file.OMFileRequest#checkSubFileExists`,
> an iterator is created for the fileTable. During this, a seek to the first
> record takes place internally. Following which a seek to a prefix is done in
> the method. RocksDB provides iterator(prefix) method to directly create and
> seek together. This would be more efficient
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]