You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Pete Wyckoff (JIRA)" <ji...@apache.org> on 2008/07/08 23:26:31 UTC

[jira] Commented: (HADOOP-3485) implement writes

    [ https://issues.apache.org/jira/browse/HADOOP-3485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12611808#action_12611808 ] 

Pete Wyckoff commented on HADOOP-3485:
--------------------------------------

FUSE/Java FileOutputStream is causing the close to happen right after the create.  I don't know which. Here's the output from fuse running in debug mode:

  [junit] unique: 1, opcode: INIT (26), nodeid: 0, insize: 56
    [junit] INIT: 7.8
    [junit] flags=0x00000003
    [junit] max_readahead=0x00020000
    [junit]    INIT: 7.8
    [junit]    flags=0x00000001
    [junit]    max_readahead=0x00020000
    [junit]    max_write=0x00020000
    [junit]    unique: 1, error: 0 (Success), outsize: 40
    [junit] unique: 2, opcode: LOOKUP (1), nodeid: 1, insize: 50
    [junit] LOOKUP /hello.txt
    [junit]    unique: 2, error: -2 (No such file or directory), outsize: 16
    [junit] unique: 3, opcode: MKNOD (8), nodeid: 1, insize: 58
    [junit] MKNOD /hello.txt
    [junit] in dfs_create!   NODEID: 2
    [junit] dfs_release    unique: 3, error: 0 (Success), outsize: 136
    [junit] unique: 4, opcode: OPEN (14), nodeid: 2, insize: 48
    [junit]    unique: 4, error: 0 (Success), outsize: 32
    [junit] OPEN[12151664] flags: 0x8401 /hello.txt
    [junit] unique: 5, opcode: WRITE (16), nodeid: 2, insize: 75
    [junit] WRITE[12151664] 11 bytes to 0
    [junit]    WRITE[12151664] 11 bytes
    [junit]    unique: 5, error: 0 (Success), outsize: 24
    [junit] unique: 6, opcode: FLUSH (25), nodeid: 2, insize: 64
    [junit] FLUSH[12151664]
    [junit]    unique: 6, error: 0 (Success), outsize: 16
    [junit] unique: 7, opcode: RELEASE (18), nodeid: 2, insize: 64
    [junit] RELEASE[12151664] flags: 0x8401
  
And here's the java code creating the file:

      // create the file                                                                                                                         
        File file = new File(mpoint, "hello.txt");
        FileOutputStream f = new FileOutputStream(file);
        String s = "hello world";
        f.write(s.getBytes());
        f.flush();
        f.close();




> implement writes
> ----------------
>
>                 Key: HADOOP-3485
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3485
>             Project: Hadoop Core
>          Issue Type: New Feature
>          Components: contrib/fuse-dfs
>            Reporter: Pete Wyckoff
>            Priority: Minor
>         Attachments: patch1.txt
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> Doesn't support writes because fuse protocol first creates the file then closes it and re-opens it to start writing to it. So, (until hadoop-1700), we need a work around.
> One way to do this is to open the file with overwrite flag on the second open. For security, would only want to do this for zero length files (could even check the creation ts too, but because of clock skew, that may be harder).
> Doug, Craig, Nicholas - Comments?
> -- pete
> ps since mostly already implemented, this should be a very quick patch

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.