Skip to content

Commit a53fe74

Browse files
authored
Merge branch 'main' into job_parent_hierarchy_backfills
2 parents d7082b0 + 0021a2b commit a53fe74

18 files changed

Lines changed: 2415 additions & 742 deletions

File tree

.circleci/config.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ jobs:
2929
- v1-api-{{ .Branch }}
3030
- run: ./.circleci/get-jdk17.sh
3131
- run: echo "checks.disable=true" > ~/.testcontainers.properties
32+
- run: ./gradlew --no-daemon --stacktrace api:javadoc
3233
- run: ./gradlew --no-daemon --stacktrace api:build
3334
- run: ./gradlew --no-daemon api:jacocoTestReport
3435
- run: bash <(curl -s https://codecov.io/bash)
@@ -95,6 +96,7 @@ jobs:
9596
- v1-client-java-{{ .Branch }}-{{ .Revision }}
9697
- v1-client-java-{{ .Branch }}
9798
- run: ./.circleci/get-jdk17.sh
99+
- run: ./gradlew --no-daemon --stacktrace clients:java:javadoc
98100
- run: ./gradlew --no-daemon --stacktrace clients:java:build
99101
- run: ./gradlew --no-daemon clients:java:jacocoTestReport
100102
- run: bash <(curl -s https://codecov.io/bash)
@@ -132,7 +134,7 @@ jobs:
132134
- ./dist/*.whl
133135
- ./dist/*.tar.gz
134136

135-
lint-docs-api:
137+
lint-spec-api:
136138
working_directory: ~/marquez
137139
docker:
138140
- image: cimg/node:12.22.7
@@ -187,7 +189,7 @@ workflows:
187189
- build-client-java
188190
- unit-test-web
189191
- unit-test-client-python
190-
- lint-docs-api
192+
- lint-spec-api
191193
release:
192194
jobs:
193195
- build-client-python:

CHANGELOG.md

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,27 @@
11
# Changelog
22

3-
## [Unreleased](https://github.com/MarquezProject/marquez/compare/0.21.0...HEAD)
3+
## [Unreleased](https://github.com/MarquezProject/marquez/compare/0.22.0...HEAD)
4+
5+
## [0.22.0](https://github.com/MarquezProject/marquez/compare/0.21.0...0.22.0) - 2022-05-16
46

57
### Added
68

7-
* Add support for `LifecycleStateChangeFacet` with an ability to softly delete datasets [@pawel-big-lebowski](https://github.com/pawel-big-lebowski)
8-
* Enable pod specific annotations in Marquez Helm Chart via `marquez.podAnnotations` [@wslulciuc](https://github.com/wslulciuc)
9-
* Add support for job renaming/redirection via symlink [@collado-mike](https://github.com/collado-mike)
9+
* Add support for `LifecycleStateChangeFacet` with an ability to softly delete datasets [#1847](https://github.com/MarquezProject/marquez/pull/1847)[@pawel-big-lebowski](https://github.com/pawel-big-lebowski)
10+
* Enable pod specific annotations in Marquez Helm Chart via `marquez.podAnnotations` [#1945](https://github.com/MarquezProject/marquez/pull/1945) [@wslulciuc](https://github.com/wslulciuc)
11+
* Add support for job renaming/redirection via symlink [#1947](https://github.com/MarquezProject/marquez/pull/1947) [@collado-mike](https://github.com/collado-mike)
12+
* Add `Created by` view for dataset versions along with SQL syntax highlighting in web UI [#1929](https://github.com/MarquezProject/marquez/pull/1929) [@phixMe](https://github.com/phixMe)
13+
* Add `operationId` to openapi spec [#1978](https://github.com/MarquezProject/marquez/pull/1978) [@phixMe](https://github.com/phixMe)
1014

1115
### Changed
1216

13-
* Upgrade Flyway to v7.6.0 [@dakshin-k](https://github.com/dakshin-k)
17+
* Upgrade Flyway to v7.6.0 [#1974](https://github.com/MarquezProject/marquez/pull/1974) [@dakshin-k](https://github.com/dakshin-k)
18+
19+
### Fixed
20+
21+
* Remove size limits on namespaces, dataset names, and and source connection urls [#1925](https://github.com/MarquezProject/marquez/pull/1925) [@collado-mike](https://github.com/collado-mike)
22+
* Update namespace names to allow `=`, `@`, and `;` [#1936](https://github.com/MarquezProject/marquez/pull/1936) [@mobuchowski](https://github.com/mobuchowski)
23+
* Time duration display in web UI [#1950](https://github.com/MarquezProject/marquez/pull/1950) [@phixMe](https://github.com/phixMe)
24+
* Enable web UI to access API via Helm Chart [@GZack2000](https://github.com/GZack2000)
1425

1526
## [0.21.0](https://github.com/MarquezProject/marquez/compare/0.20.0...0.21.0) - 2022-03-03
1627

README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,14 @@ Marquez is an open source **metadata service** for the **collection**, **aggrega
2424

2525
Marquez is an [LF AI & Data Foundation](https://lfaidata.foundation/projects/marquez) incubation project under active development and we'd love your help!
2626

27+
## Adopters
28+
29+
Want to be added? Send a pull request our way!
30+
31+
* [Astronomer](https://astronomer.io)
32+
* [Datakin](https://datakin.com)
33+
* [Northwestern Mutual](https://www.northwesternmutual.com)
34+
2735
## Try it!
2836

2937
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/MarquezProject/marquez)
@@ -38,6 +46,8 @@ $ ./docker/up.sh
3846

3947
> **Tip:** Use the `--build` flag to build images from source, and/or `--seed` to start Marquez with sample lineage metadata. For a more complete example using the sample metadata, please follow our [quickstart](https://marquezproject.github.io/marquez/quickstart.html) guide.
4048
49+
> **Note:** Port 5000 is now reserved for MacOS. If running locally on MacOS, you can run `./docker/up.sh --api-port 9000` to configure the API to listen on port 9000 instead. Keep in mind that you will need to update the URLs below with the appropriate port number.
50+
4151
**`WEB UI`**
4252

4353
You can open [http://localhost:3000](http://localhost:3000) to begin exploring the Marquez Web UI. The UI enables you to discover dependencies between jobs and the datasets they produce and consume via the lineage graph, view run metadata of current and previous job runs, and much more!

api/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ dependencies {
4747
implementation "io.sentry:sentry:${sentryVersion}"
4848
implementation 'org.flywaydb:flyway-core:8.5.10'
4949
implementation "org.postgresql:postgresql:${postgresqlVersion}"
50-
implementation 'com.graphql-java:graphql-java:18.0'
50+
implementation 'com.graphql-java:graphql-java:18.1'
5151
implementation 'com.graphql-java-kickstart:graphql-java-servlet:12.0.0'
5252

5353
testImplementation "io.dropwizard:dropwizard-testing:${dropwizardVersion}"

api/src/main/java/marquez/cli/SeedCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
* --port}. This command is meant to be used to explore the features of Marquez. For example,
5454
* lineage graph, dataset schemas, job run history, etc.
5555
*
56-
* <h3>Usage</h3>
56+
* <h2>Usage</h2>
5757
*
5858
* For example, to override the {@code port}:
5959
*
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
ALTER TABLE jobs ADD COLUMN IF NOT EXISTS parent_job_uuid uuid CONSTRAINT jobs_parent_fk_jobs REFERENCES jobs (uuid);
2+
ALTER TABLE runs ADD COLUMN IF NOT EXISTS parent_run_uuid uuid CONSTRAINT runs_parent_fk_runs REFERENCES runs (uuid);
3+
4+
DROP INDEX IF EXISTS jobs_name_index;
5+
ALTER TABLE jobs DROP CONSTRAINT jobs_namespace_uuid_name_key;
6+
DROP INDEX IF EXISTS jobs_namespace_uuid_name_key;
7+
8+
CREATE UNIQUE INDEX IF NOT EXISTS jobs_name_parent ON jobs (name, namespace_name, parent_job_uuid);
9+
CREATE UNIQUE INDEX IF NOT EXISTS jobs_namespace_uuid_name_parent ON jobs (name, namespace_uuid, parent_job_uuid);
10+
CREATE UNIQUE INDEX IF NOT EXISTS jobs_namespace_uuid_name_null_parent ON jobs (name, namespace_uuid) WHERE parent_job_uuid IS NULL;
11+
ALTER TABLE jobs ADD CONSTRAINT unique_jobs_namespace_uuid_name_parent UNIQUE USING INDEX jobs_namespace_uuid_name_parent;
12+
13+
CREATE OR REPLACE VIEW jobs_view
14+
AS
15+
with recursive
16+
job_fqn AS (
17+
SELECT uuid, name, namespace_name, parent_job_uuid
18+
FROM jobs
19+
UNION ALL
20+
SELECT j1.uuid,
21+
CASE WHEN j2.name IS NOT NULL THEN j2.name || '.' || j1.name ELSE j1.name END AS name,
22+
CASE WHEN j2.namespace_name IS NOT NULL THEN j2.namespace_name ELSE j1.namespace_name END AS namespace_name,
23+
j2.parent_job_uuid
24+
FROM jobs j1
25+
INNER JOIN job_fqn j2 ON j2.uuid=j1.parent_job_uuid
26+
)
27+
SELECT f.uuid,
28+
f.name,
29+
f.namespace_name,
30+
j.name AS simple_name,
31+
f.parent_job_uuid,
32+
j.type,
33+
j.created_at,
34+
j.updated_at,
35+
j.namespace_uuid,
36+
j.description,
37+
j.current_version_uuid,
38+
j.current_job_context_uuid,
39+
j.current_location,
40+
j.current_inputs,
41+
j.symlink_target_uuid
42+
FROM job_fqn f, jobs j
43+
WHERE j.uuid=f.uuid
44+
AND f.parent_job_uuid IS NULL

build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ buildscript {
2121
dependencies {
2222
classpath 'com.adarshr:gradle-test-logger-plugin:3.2.0'
2323
classpath 'gradle.plugin.com.github.johnrengelman:shadow:7.1.2'
24-
classpath 'com.diffplug.spotless:spotless-plugin-gradle:6.5.1'
24+
classpath 'com.diffplug.spotless:spotless-plugin-gradle:6.6.1'
2525
}
2626
}
2727

@@ -54,14 +54,14 @@ subprojects {
5454

5555
ext {
5656
assertjVersion = '3.22.0'
57-
dropwizardVersion = '2.0.29'
57+
dropwizardVersion = '2.1.0'
5858
jacocoVersion = '0.8.7'
5959
junit5Version = '5.8.2'
6060
lombokVersion = '1.18.24'
6161
mockitoVersion = '4.5.1'
6262
openlineageVersion = '0.8.1'
6363
slf4jVersion = '1.7.36'
64-
postgresqlVersion = '42.3.4'
64+
postgresqlVersion = '42.3.5'
6565
isReleaseVersion = !version.endsWith('SNAPSHOT')
6666
}
6767

chart/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,4 @@ name: marquez
2929
sources:
3030
- https://github.com/MarquezProject/marquez
3131
- https://marquezproject.github.io/marquez/
32-
version: 0.21.10
32+
version: 0.22.0

chart/values.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ marquez:
1717
image:
1818
registry: docker.io
1919
repository: marquezproject/marquez
20-
tag: 0.21.0
20+
tag: 0.22.0
2121
pullPolicy: IfNotPresent
2222
## Name of the existing secret containing credentials for the Marquez installation.
2323
## When this is specified, it will take precedence over the values configured in the 'db' section.
@@ -75,7 +75,7 @@ web:
7575
image:
7676
registry: docker.io
7777
repository: marquezproject/marquez-web
78-
tag: 0.21.0
78+
tag: 0.22.0
7979
pullPolicy: IfNotPresent
8080
## Marquez website will run on this port
8181
##
@@ -107,7 +107,7 @@ postgresql:
107107
## @param image.tag PostgreSQL image tag (immutable tags are recommended)
108108
##
109109
image:
110-
tag: 12.1.0
110+
tag: 0.22.0
111111
## Authentication parameters
112112
## ref: https://github.com/bitnami/bitnami-docker-postgresql/blob/master/README.md#setting-the-root-password-on-first-run
113113
## ref: https://github.com/bitnami/bitnami-docker-postgresql/blob/master/README.md#creating-a-database-on-first-run

clients/java/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@ Maven:
1010
<dependency>
1111
<groupId>io.github.marquezproject</groupId>
1212
<artifactId>marquez-java</artifactId>
13-
<version>0.21.0</version>
13+
<version>0.22.0</version>
1414
</dependency>
1515
```
1616

1717
or Gradle:
1818

1919
```groovy
20-
implementation 'io.github.marquezproject:marquez-java:0.21.0
20+
implementation 'io.github.marquezproject:marquez-java:0.22.0
2121
```
2222

2323
## Usage

0 commit comments

Comments
 (0)