[ https://issues.apache.org/jira/browse/FALCON-2057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15357821#comment-15357821 ]
Balu Vellanki commented on FALCON-2057: --------------------------------------- Thanks [~sowmyaramesh] for debugging issue. The error is happening because the status for HiveDR is stored under baseDir/dbName/jobName directory. When FileSystem.mkdirs(fileSystem, new Path(baseDir/dbName/jobName), PERMISSION) method is used, the jobName dir is created with requested permission. But the dbName dir is created with permissions+umask. This can cause other users to not be able to replicate data into tables in this DB. To fix the problem, create baseDir/dbName first with required permissions. Then create baseDir/dbName/jobName dir. > HiveDR not working with multiple users and same DB > -------------------------------------------------- > > Key: FALCON-2057 > URL: https://issues.apache.org/jira/browse/FALCON-2057 > Project: Falcon > Issue Type: Bug > Components: replication > Affects Versions: trunk > Reporter: Murali Ramasami > Fix For: trunk, 0.10 > > > When falcon hivedr jobs are executed with multiple users and with the same > hive database. Jobs are failing with the following error: > {noformat} > SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] > Exception encountered Failed to get ReplicationStatus for job > HIVEReplicationTest > org.apache.falcon.hive.exception.HiveReplicationException: Failed to get > ReplicationStatus for job HIVEReplicationTest > at > org.apache.falcon.hive.util.HiveDRStatusStore.getDbReplicationStatus(HiveDRStatusStore.java:190) > at > org.apache.falcon.hive.util.HiveDRStatusStore.getReplicationStatus(HiveDRStatusStore.java:137) > at > org.apache.falcon.hive.LastReplicatedEvents.getLastSavedEventId(LastReplicatedEvents.java:120) > at > org.apache.falcon.hive.LastReplicatedEvents.getLastEvents(LastReplicatedEvents.java:101) > at org.apache.falcon.hive.HiveDRTool.getLastEvents(HiveDRTool.java:307) > at org.apache.falcon.hive.HiveDRTool.execute(HiveDRTool.java:171) > at org.apache.falcon.hive.HiveDRTool.run(HiveDRTool.java:106) > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76) > at org.apache.falcon.hive.HiveDRTool.main(HiveDRTool.java:334) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at org.apache.oozie.action.hadoop.JavaMain.run(JavaMain.java:56) > at org.apache.oozie.action.hadoop.LauncherMain.run(LauncherMain.java:51) > at org.apache.oozie.action.hadoop.JavaMain.main(JavaMain.java:35) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at > org.apache.oozie.action.hadoop.LauncherMapper.map(LauncherMapper.java:242) > at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:54) > at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:453) > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:343) > at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:415) > at > org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1724) > at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162) > Intercepting System.exit(-1) > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)