State

[progress record]: It has been claimed by casinoxia

Proposed time: 2022/06/14

Discussion time:

Acceptance time:

Complete time:

[issues]:

[email]:  

[release]: linkis 1.2.0

[proposer]:casionxia

Motivation & Background

linkis packages the binary module assembly-combined-package with several layers of modules nested inside. The directory structure is as follows

├── assembly-combined
│ ├── bin
│ │ ├── linkis-cli
│ │ ├── .....
│ ├── conf
│ │ ├── application-eureka.yml
│ │ ├── .....
│ ├── pom.xml
│ ├── public-module-combined
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ └── assembly
│ ├── sbin
│ │ ├── common.sh
│ │ ├── ext
│ │ │ ├── linkis-cg-engineconnmanager
│ │ │ ├── l....
│ │ ├── linkis-start-all.sh
│ │ └── ....
│ └── src
│ └── main
│ └── assembly
│ └── assembly.xml
├── bin
│ ├── ....
│ └── install.sh
├── deploy-config
│ ├── db.sh
│ └── linkis-env.sh
├── pom.xml
└── src
└── main
└── assembly
└── assembly.xml

The module name is inaccurate, the module can be optimized and adjusted to a module

Basic concept

Expect to achieve goals

  • Adjusted directory structure
├── bin
│ ├── checkEnv.sh
│ ├── common.sh
│ └── install.sh
├── deploy-config
│ ├── db.sh
│ └── linkis-env.sh
├── out.txt
├── package
│ ├── bin
│ │ ├── linkis-cli
│ ├── conf
│ │ ├── application-eureka.yml
│ ├── db
│ │ ├── linkis_ddl.sql
│ │ ├── linkis_dml.sql
│ │ ├── module
│ │ └── upgrade
│ └── sbin
│ ├── linkis-start-all.sh
├── pom.xml
├── release-docs
│ ├── LICENSE
│ ├── licenses
│ │ ├── LICENSE-accessors-smart.txt
│ │ ├── LICENSE-activation.txt
│ └── NOTICE
├── src
│ └── main
│ └── assembly


Implementation plan

  • Adjust the packaging and compilation process


Things to Consider & Note:

Changes


Modification Detail
1
Modification of maven module


2Modification of HTTP interface
3Modification of the client interface
4Modification of database table structure
5Modification of configuration item
6Modification Error code 
7Modifications for Third Party Dependencies

Compatibility, Deprecation, and Migration Plan

  • What impact (if any) will there be on existing users?
  • If we are changing behavior, how will we phase out the older behavior?
  • If we require special migration tools, describe them here.
  • When will we remove the existing behavior?