Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-7030

Make format plugins fully pluggable

Attach filesAttach ScreenshotVotersStop watchingWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.15.0
    • 1.17.0
    • None

    Description

      Discussion on the mailing list - https://lists.apache.org/thread.html/0c7de9c23ee9a8e18f8548ae0a323284cf1311b9570bd77ba544f63d@%3Cdev.drill.apache.org%3E

      Before we were adding new formats / plugins into the exec module. Eventually we came up to the point that exec package size is growing and adding plugin and format contributions is better to separate out in the different module.
      
      Now we have contrib module where we add such contributions. Plugins are pluggable, there are added automatically by means of having drill-module.conf file which points to the scanning packages.
      
      Format plugins are using the same approach, the only problem is that they are not added into bootstrap-storage-plugins.json. So when adding new format plugin, in order for it to automatically appear in Drill Web UI, developer has to update bootstrap file which is in the exec module.
      
      My suggestion we implement some functionality that would merge format config with the bootstrap one. For example, each plugin would have to have bootstrap-format-plugins.json file with the information to which plugin format should be added (structure the same as in bootstrap-storage-plugins.json):
      Example:
      
      {
        "storage":{
          dfs: {
            formats: {
              "psv" : {
                type: "msgpack",
                extensions: [ "mp" ]
              }
            }
          }
        }
      }
      
      Then during Drill start up such bootstrap-format-plugins.json files will be merged with bootstrap-storage-plugins.json.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            angozhiy Anton Gozhiy
            arina Arina Ielchiieva
            Arina Ielchiieva Arina Ielchiieva
            Votes:
            0 Vote for this issue
            Watchers:
            4 Stop watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment