Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-1027

chroot not transparent in zoo_create()

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 3.3.3
    • 3.4.0
    • c client
    • None
    • Linux, ZooKeeper 3.3.3, C-client, java 1.6.0_17-b04, hotspot server vm

    • Reviewed
    • Correctly removes the chroot from the returned path in a call to zoo_create()
    • chroot zookeeper zoo_create

    Description

      I've recently started to use the chroot functionality (introduced in
      3.2.0) as part of my connect string.It mostly works as expected, but
      there is one case that is unexpected: when I create a path with
      zoo_create() I can retrieve the created path. This is very useful when
      you set the ZOO_SEQUENCE flag. Unfortunately the returned path
      includes the chroot as part of the path. This was unexpected to me: I
      expected that the chroot would be totally transparent. The
      documentation for zoo_create() says:
      "path_buffer : Buffer which will be filled with the path of the new
      node (this might be different than the supplied path because of the
      ZOO_SEQUENCE flag)."

      This gave me the impression that this flag is the only reason the
      returned path is different from the created path, but apparently it's
      not. Is this a bug or intended behavior?
      I workaround this issue now by remembering the chroot in
      my wrapper code and after a call to zoo_create() i check if the returned
      path starts with the chroot. If it does, I remove it.

      My use case is to create a path with a sequence number and then delete
      this path later. Unfortunately I cannot delete the path because it has
      the chroot prepended to it, and thus it will result in two chroots.

      I believe this only affects the create functions.

      Attachments

        1. ZOOKEEPER-1027-TRUNK_WITH_TESTS.patch
          2 kB
          Thijs Terlouw
        2. ZOOKEEPER-1027-TRUNK_WITH_TESTS.patch
          2 kB
          Mahadev Konar
        3. ZOOKEEPER-1027-TRUNK_WITH_TESTS.patch
          2 kB
          Mahadev Konar
        4. ZOOKEEPER-1027-PATCH-TRUNK2.patch
          3 kB
          Thijs Terlouw
        5. ZOOKEEPER-1027-PATCH-TRUNK3.patch
          3 kB
          Thijs Terlouw

        Issue Links

          Activity

            People

              tt Thijs Terlouw
              tt Thijs Terlouw
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: