Uploaded image for project: 'Bigtop'
  1. Bigtop
  2. BIGTOP-2050

Description of clean tasks have null entries

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.0.0
    • Fix Version/s: 1.1.0
    • Component/s: build
    • Labels:
      None

      Description

      -clean entries from ./gradlew tasks have nulls:

      hadoop-clean - Removing hadoop component null and null
      
      1. BIGTOP-2050.patch
        1 kB
        Konstantin Boudnik

        Activity

        Hide
        cos Konstantin Boudnik added a comment -

        Pushed to the master

        Show
        cos Konstantin Boudnik added a comment - Pushed to the master
        Hide
        rnowling RJ Nowling added a comment -

        +1

        Show
        rnowling RJ Nowling added a comment - +1
        Hide
        cos Konstantin Boudnik added a comment -

        The patch to fix the issue. We got bitten by the lazy evaluation here.

        Here how it works: we are calculating some components specific variables inside of vardefines task. However, the vars aren't getting called unless one of it's dependencies is called, e.g. hbase-deb. During the tasks and similar build operations all the tasks are generated but vars like HBASE_BUILD_DIR isn't calculated until the vardefines is actually called.

        The best course of actions is to simply avoid using this info in the task's description.

        Show
        cos Konstantin Boudnik added a comment - The patch to fix the issue. We got bitten by the lazy evaluation here. Here how it works: we are calculating some components specific variables inside of vardefines task. However, the vars aren't getting called unless one of it's dependencies is called, e.g. hbase-deb . During the tasks and similar build operations all the tasks are generated but vars like HBASE_BUILD_DIR isn't calculated until the vardefines is actually called. The best course of actions is to simply avoid using this info in the task's description.
        Hide
        cos Konstantin Boudnik added a comment -

        Perhaps this related to the fact that in order to get these variables set a component vardefines task needs to be executed. And we tasks is being run it isn't the case. Perhaps the best solution will be to just avoid printing this info in the description. And BTW - we had the same behavior with old BOM format, so it isn't something new

        Show
        cos Konstantin Boudnik added a comment - Perhaps this related to the fact that in order to get these variables set a component vardefines task needs to be executed. And we tasks is being run it isn't the case. Perhaps the best solution will be to just avoid printing this info in the description. And BTW - we had the same behavior with old BOM format, so it isn't something new
        Hide
        cos Konstantin Boudnik added a comment -

        It's actually pretty weird, considering that these values are surely initialized when you call such a task explicitly and it does the job... Hmmm

        Show
        cos Konstantin Boudnik added a comment - It's actually pretty weird, considering that these values are surely initialized when you call such a task explicitly and it does the job... Hmmm

          People

          • Assignee:
            cos Konstantin Boudnik
            Reporter:
            rnowling RJ Nowling
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development