Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 4.0_b89_RC5
    • Fix Version/s: 4.1
    • Component/s: admin
    • Labels:
      None
    • Environment:

      Windows

      Description

      Here's the detailed steps to reproduce it:

      1).Failed in delete the local instance

      <1>.asadmin create-local-instance ins1
      Command create-local-instance executed successfully.

      <2>.asadmin create-local-instance INS1
      Command create-local-instance executed successfully.

      <3>.asadmin delete-local-instance ins1
      Command delete-local-instance executed successfully.

      <4>.asadmin delete-local-instance INS1
      The instance does not exist on this machine.
      Command delete-local-instance failed.

      <5>. asadmin list-instances
      INS1 not running
      Command list-instances executed successfully.

      I have confirmed this bug is only happened on the windows platform which treats two file paths as the same even if they have different case.

      BTW: I have uploaded the patch to fix this issue, pls check whether it is fine for me to check in the changes?

      Thanks

        Activity

        Jeremy_Lv created issue -
        Jeremy_Lv made changes -
        Field Original Value New Value
        Attachment Resolved_patch_new(GFV4.0.1).zip [ 52181 ]
        Jeremy_Lv made changes -
        Attachment Resolved_patch_new(GFV4.0.1).zip [ 52182 ]
        Jeremy_Lv made changes -
        Attachment Resolved_patch_new(GFV4.0.1).zip [ 52182 ]
        Jeremy_Lv made changes -
        Attachment Resolved_patch_new(GFV4.0.1).zip [ 52183 ]
        Jeremy_Lv made changes -
        Attachment Resolved_patch_new(GFV4.0.1).zip [ 52183 ]
        Jeremy_Lv made changes -
        Attachment GLASSFISH_20649_REVISED_SOURCE.zip [ 52261 ]
        Jeremy_Lv made changes -
        Attachment GLASSFISH_20649_REVISED_SOURCE.zip [ 52262 ]
        Jeremy_Lv made changes -
        Attachment GLASSFISH_20649_REVISED_SOURCE.zip [ 52262 ]
        Hide
        Jeremy_Lv added a comment -

        Hi, Chris:
        IMHO, I think this is a critical bug, here's some of my opnions:

        1). If any user have created an instance called ins1 under the directory of GF_home/$

        {nodedir}

        /$

        {node}

        , another user create the instance INS1 on the windows platform under the same node directory, the INS1's directory will cover the ins1's directory after the user have created the INS1. This will destroy the user's property about the directory ins1 without any warning messages.

        2). The instance can't be started if we have deleted another instance with the same name - different case on the windows platform.

        3). It will be failed in deleting the instance if we have deleted another instance with the same name - different case on the windows platform.

        Show
        Jeremy_Lv added a comment - Hi, Chris: IMHO, I think this is a critical bug, here's some of my opnions: 1). If any user have created an instance called ins1 under the directory of GF_home/$ {nodedir} /$ {node} , another user create the instance INS1 on the windows platform under the same node directory, the INS1's directory will cover the ins1's directory after the user have created the INS1. This will destroy the user's property about the directory ins1 without any warning messages. 2). The instance can't be started if we have deleted another instance with the same name - different case on the windows platform. 3). It will be failed in deleting the instance if we have deleted another instance with the same name - different case on the windows platform.
        Hide
        Jeremy_Lv added a comment -

        Chris:

        However, the changes I have attached exist some drawbacks need to be discussed:

        1). It will affect the glassfish's performance when execute the "create-instance" and "create-local-instance" command, because it will list the related instance during the operation to create the instance:

        CreateInstanceCommand.java
        CommandInvocation listInstances = cr.getCommandInvocation("list-instances", report, context.getSubject());
        ParameterMap map = new ParameterMap();
        map.add("whichTarget", theNode.getName());
        listInstances.parameters(map);
        listInstances.execute();
        
        CreateLocalInstanceCommand.java
            RemoteCLICommand rc = new RemoteCLICommand("list-instances", this.programOpts, this.env);
        

        2). We should to make sure the value of nodedir can be copied in the configuration file when the node is initialized(I have discussed this issue in the dev mail list and created an issue related as GLASSFISH-20706 ), this is used to enhance our modification about this issue.

        3). Our changes will not affect the syntax exist in the Linux platform. This is just an enhancement related to the windows platform.

        Show
        Jeremy_Lv added a comment - Chris: However, the changes I have attached exist some drawbacks need to be discussed: 1). It will affect the glassfish's performance when execute the "create-instance" and "create-local-instance" command, because it will list the related instance during the operation to create the instance: CreateInstanceCommand.java CommandInvocation listInstances = cr.getCommandInvocation( "list-instances" , report, context.getSubject()); ParameterMap map = new ParameterMap(); map.add( "whichTarget" , theNode.getName()); listInstances.parameters(map); listInstances.execute(); CreateLocalInstanceCommand.java RemoteCLICommand rc = new RemoteCLICommand( "list-instances" , this .programOpts, this .env); 2). We should to make sure the value of nodedir can be copied in the configuration file when the node is initialized(I have discussed this issue in the dev mail list and created an issue related as GLASSFISH-20706 ), this is used to enhance our modification about this issue. 3). Our changes will not affect the syntax exist in the Linux platform. This is just an enhancement related to the windows platform.
        Jeremy_Lv made changes -
        Attachment GLASSFISH_20649_REVISED_SOURCE.zip [ 52261 ]
        Hide
        Jeremy_Lv added a comment -

        Here's update the revision!

        Show
        Jeremy_Lv added a comment - Here's update the revision!
        Jeremy_Lv made changes -
        Attachment revision.patch [ 52482 ]
        Hide
        Jeremy_Lv added a comment - - edited

        Checked in the changes as the revision 62710.

        nucleus\cluster\cli\src\main\java\com\sun\enterprise\admin\cli\cluster\LocalStrings.properties
        nucleus\cluster\admin\src\main\java\com\sun\enterprise\v3\admin\cluster\CreateInstanceCommand.java
        nucleus\admin\config-api\src\main\java\com\sun\enterprise\config\serverbeans\LocalStrings.properties
        nucleus\cluster\cli\src\main\java\com\sun\enterprise\admin\cli\cluster\LocalStrings.properties
        nucleus\admin\config-api\src\main\java\com\sun\enterprise\config\serverbeans\CopyConfig.java
        nucleus\cluster\admin\src\main\java\com\sun\enterprise\v3\admin\cluster\LocalStrings.properties
        nucleus\cluster\cli\src\main\java\com\sun\enterprise\admin\cli\cluster\CreateLocalInstanceCommand.java
        At revision: 62710

        Passed all of the QL tests!

        Show
        Jeremy_Lv added a comment - - edited Checked in the changes as the revision 62710. nucleus\cluster\cli\src\main\java\com\sun\enterprise\admin\cli\cluster\LocalStrings.properties nucleus\cluster\admin\src\main\java\com\sun\enterprise\v3\admin\cluster\CreateInstanceCommand.java nucleus\admin\config-api\src\main\java\com\sun\enterprise\config\serverbeans\LocalStrings.properties nucleus\cluster\cli\src\main\java\com\sun\enterprise\admin\cli\cluster\LocalStrings.properties nucleus\admin\config-api\src\main\java\com\sun\enterprise\config\serverbeans\CopyConfig.java nucleus\cluster\admin\src\main\java\com\sun\enterprise\v3\admin\cluster\LocalStrings.properties nucleus\cluster\cli\src\main\java\com\sun\enterprise\admin\cli\cluster\CreateLocalInstanceCommand.java At revision: 62710 Passed all of the QL tests!
        Jeremy_Lv made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Romain Grécourt made changes -
        Fix Version/s 4.1 [ 16387 ]
        Fix Version/s 4.0.1 [ 16061 ]

          People

          • Assignee:
            Chris Kasso
            Reporter:
            Jeremy_Lv
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: