You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Lisheng Sun (JIRA)" <ji...@apache.org> on 2019/08/05 08:27:00 UTC
[jira] [Updated] (HDFS-14701) Change Log Level to warn in
SlotReleaser
[ https://issues.apache.org/jira/browse/HDFS-14701?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lisheng Sun updated HDFS-14701:
-------------------------------
Description:
{code:java}
// @Override
public void run() {
LOG.trace("{}: about to release {}", ShortCircuitCache.this, slot);
final DfsClientShm shm = (DfsClientShm)slot.getShm();
final DomainSocket shmSock = shm.getPeer().getDomainSocket();
final String path = shmSock.getPath();
boolean success = false;
try (DomainSocket sock = DomainSocket.connect(path);
DataOutputStream out = new DataOutputStream(
new BufferedOutputStream(sock.getOutputStream()))) {
new Sender(out).releaseShortCircuitFds(slot.getSlotId());
DataInputStream in = new DataInputStream(sock.getInputStream());
ReleaseShortCircuitAccessResponseProto resp =
ReleaseShortCircuitAccessResponseProto.parseFrom(
PBHelperClient.vintPrefixed(in));
if (resp.getStatus() != Status.SUCCESS) {
String error = resp.hasError() ? resp.getError() : "(unknown)";
throw new IOException(resp.getStatus().toString() + ": " + error);
}
LOG.trace("{}: released {}", this, slot);
success = true;
} catch (IOException e) {
LOG.error(ShortCircuitCache.this + ": failed to release " +
"short-circuit shared memory slot " + slot + " by sending " +
"ReleaseShortCircuitAccessRequestProto to " + path +
". Closing shared memory segment.", e);
} finally {
if (success) {
shmManager.freeSlot(slot);
} else {
shm.getEndpointShmManager().shutdown(shm);
}
}
}
{code}
*exception stack:*
{code:java}
// code placeholder
{code}
2019-08-05,15:28:03,838 ERROR [ShortCircuitCache_SlotReleaser] org.apache.hadoop.hdfs.shortcircuit.ShortCircuitCache: ShortCircuitCache(0x65849546): failed to release short-circuit shared memory slot Slot(slotIdx=62, shm=DfsClientShm(70593ef8b3d84cba3c2f0a1e81377eb1)) by sending ReleaseShortCircuitAccessRequestProto to /home/work/app/hdfs/c3micloudsrv-hdd/datanode/dn_socket. Closing shared memory segment.
java.io.IOException: ERROR_INVALID: there is no shared memory segment registered with shmId 70593ef8b3d84cba3c2f0a1e81377eb1
was:
{code:java}
// @Override
public void run() {
LOG.trace("{}: about to release {}", ShortCircuitCache.this, slot);
final DfsClientShm shm = (DfsClientShm)slot.getShm();
final DomainSocket shmSock = shm.getPeer().getDomainSocket();
final String path = shmSock.getPath();
boolean success = false;
try (DomainSocket sock = DomainSocket.connect(path);
DataOutputStream out = new DataOutputStream(
new BufferedOutputStream(sock.getOutputStream()))) {
new Sender(out).releaseShortCircuitFds(slot.getSlotId());
DataInputStream in = new DataInputStream(sock.getInputStream());
ReleaseShortCircuitAccessResponseProto resp =
ReleaseShortCircuitAccessResponseProto.parseFrom(
PBHelperClient.vintPrefixed(in));
if (resp.getStatus() != Status.SUCCESS) {
String error = resp.hasError() ? resp.getError() : "(unknown)";
throw new IOException(resp.getStatus().toString() + ": " + error);
}
LOG.trace("{}: released {}", this, slot);
success = true;
} catch (IOException e) {
LOG.error(ShortCircuitCache.this + ": failed to release " +
"short-circuit shared memory slot " + slot + " by sending " +
"ReleaseShortCircuitAccessRequestProto to " + path +
". Closing shared memory segment.", e);
} finally {
if (success) {
shmManager.freeSlot(slot);
} else {
shm.getEndpointShmManager().shutdown(shm);
}
}
}
{code}
2019-08-05,15:28:03,838 ERROR [ShortCircuitCache_SlotReleaser] org.apache.hadoop.hdfs.shortcircuit.ShortCircuitCache: ShortCircuitCache(0x65849546): failed to release short-circuit shared memory slot Slot(slotIdx=62, shm=DfsClientShm(70593ef8b3d84cba3c2f0a1e81377eb1)) by sending ReleaseShortCircuitAccessRequestProto to /home/work/app/hdfs/c3micloudsrv-hdd/datanode/dn_socket. Closing shared memory segment.
java.io.IOException: ERROR_INVALID: there is no shared memory segment registered with shmId 70593ef8b3d84cba3c2f0a1e81377eb1
> Change Log Level to warn in SlotReleaser
> ----------------------------------------
>
> Key: HDFS-14701
> URL: https://issues.apache.org/jira/browse/HDFS-14701
> Project: Hadoop HDFS
> Issue Type: Improvement
> Reporter: Lisheng Sun
> Priority: Minor
>
> {code:java}
> // @Override
> public void run() {
> LOG.trace("{}: about to release {}", ShortCircuitCache.this, slot);
> final DfsClientShm shm = (DfsClientShm)slot.getShm();
> final DomainSocket shmSock = shm.getPeer().getDomainSocket();
> final String path = shmSock.getPath();
> boolean success = false;
> try (DomainSocket sock = DomainSocket.connect(path);
> DataOutputStream out = new DataOutputStream(
> new BufferedOutputStream(sock.getOutputStream()))) {
> new Sender(out).releaseShortCircuitFds(slot.getSlotId());
> DataInputStream in = new DataInputStream(sock.getInputStream());
> ReleaseShortCircuitAccessResponseProto resp =
> ReleaseShortCircuitAccessResponseProto.parseFrom(
> PBHelperClient.vintPrefixed(in));
> if (resp.getStatus() != Status.SUCCESS) {
> String error = resp.hasError() ? resp.getError() : "(unknown)";
> throw new IOException(resp.getStatus().toString() + ": " + error);
> }
> LOG.trace("{}: released {}", this, slot);
> success = true;
> } catch (IOException e) {
> LOG.error(ShortCircuitCache.this + ": failed to release " +
> "short-circuit shared memory slot " + slot + " by sending " +
> "ReleaseShortCircuitAccessRequestProto to " + path +
> ". Closing shared memory segment.", e);
> } finally {
> if (success) {
> shmManager.freeSlot(slot);
> } else {
> shm.getEndpointShmManager().shutdown(shm);
> }
> }
> }
> {code}
> *exception stack:*
> {code:java}
> // code placeholder
> {code}
> 2019-08-05,15:28:03,838 ERROR [ShortCircuitCache_SlotReleaser] org.apache.hadoop.hdfs.shortcircuit.ShortCircuitCache: ShortCircuitCache(0x65849546): failed to release short-circuit shared memory slot Slot(slotIdx=62, shm=DfsClientShm(70593ef8b3d84cba3c2f0a1e81377eb1)) by sending ReleaseShortCircuitAccessRequestProto to /home/work/app/hdfs/c3micloudsrv-hdd/datanode/dn_socket. Closing shared memory segment.
> java.io.IOException: ERROR_INVALID: there is no shared memory segment registered with shmId 70593ef8b3d84cba3c2f0a1e81377eb1
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org