You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@oozie.apache.org by "Abhishek Agarwal (JIRA)" <ji...@apache.org> on 2014/05/05 12:33:15 UTC

[jira] [Created] (OOZIE-1822) Oozie java action fails due to AlreadyBeingCreatedException

Abhishek Agarwal created OOZIE-1822:
---------------------------------------

             Summary: Oozie java action fails due to AlreadyBeingCreatedException
                 Key: OOZIE-1822
                 URL: https://issues.apache.org/jira/browse/OOZIE-1822
             Project: Oozie
          Issue Type: Bug
          Components: action
    Affects Versions: 3.3.2
         Environment: Hadoop 0.20.2-cdh3u5
Oozie server build version: 3.3.2.8

            Reporter: Abhishek Agarwal
            Priority: Minor


2014-04-17 17:13:33,773  WARN ActionStartXCommand:542 - USER[<user_id>] GROUP[-] TOKEN[] APP[<app_name>] JOB[0078484-    140410182733292-oozie-oozi-W] ACTION[0078484-140410182733292-oozie-oozi-W@recordsize] Error starting action [recordsize]. ErrorType [TRANSIENT], ErrorCode    [JA009], Message [JA009: org.apache.hadoop.hdfs.protocol.AlreadyBeingCreatedException: failed to create file /user/<user-name>/oozie-oozi/0078484-140410182733292-oozie-oozi-W/recordsize--java/action.xml for DFSClient_-1385059579 on client <client ip> because current leaseholder is trying to recreate file.
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.recoverLeaseInternal(FSNamesystem.java:1407)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFileInternal(FSNamesystem.java:1279)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFile(FSNamesystem.java:1221)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.create(NameNode.java:703)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.create(NameNode.java:682)
    at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:557)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1439)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1435)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1278)
    at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1433)
]

Earlier the java action had failed due to disk quota exceeded exception which is a transient error. when oozie retried to run the action, later retrials resulted in above exception. 

In org.apache.oozie.action.hadoop,LauncherMapper, if writing action xml fails due to an error, output stream should be closed gracefully. 

OutputStream os = fs.create(new Path(actionDir, ACTION_CONF_XML));
actionConf.writeXml(os);
os.close();




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