Skip to content

Commit

Permalink
Merge pull request #731 from samply/release-v0.17.6
Browse files Browse the repository at this point in the history
Release v0.17.6
  • Loading branch information
alexanderkiel authored Jun 1, 2022
2 parents bda9a59 + 7070292 commit d10c9b7
Show file tree
Hide file tree
Showing 160 changed files with 3,123 additions and 1,398 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
- name: Setup clj-kondo
uses: DeLaGuardo/setup-clj-kondo@master
with:
version: '2022.04.25'
version: '2022.05.31'

- name: Check out Git repository
uses: actions/checkout@v3
Expand Down
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## v0.17.6

### Performance

* Improve Interning of Complex Types ([#725](https://github.com/samply/blaze/issues/725))

The full changelog can be found [here](https://github.com/samply/blaze/milestone/44?closed=1).

## v0.17.5

### Bugfixes
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ The goal of this project is to provide a FHIR® Store with an internal CQL Evalu

Blaze passes all [Touchstone FHIR 4.0.1 Basic Tests][12] and almost all [CQL Tests][3]. Please refer to the [Conformance](docs/conformance.md) section and report any issues you encounter during evaluation.

Latest release: [v0.17.5][5]
Latest release: [v0.17.6][5]

## Quick Start

Expand Down Expand Up @@ -72,7 +72,7 @@ Unless required by applicable law or agreed to in writing, software distributed

[3]: <https://cql.hl7.org/tests.html>
[4]: <https://alexanderkiel.gitbook.io/blaze/deployment>
[5]: <https://github.com/samply/blaze/releases/tag/v0.17.5>
[5]: <https://github.com/samply/blaze/releases/tag/v0.17.6>
[6]: <https://www.yourkit.com/java/profiler/>
[7]: <https://www.yourkit.com/.net/profiler/>
[8]: <https://www.yourkit.com/youmonitor/>
Expand Down
4 changes: 2 additions & 2 deletions docs/deployment/docker-deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Blaze should log something like this:
2021-06-27T11:02:37.834Z ee086ef908c1 main INFO [blaze.core:64] - JVM version: 16.0.2
2021-06-27T11:02:37.834Z ee086ef908c1 main INFO [blaze.core:65] - Maximum available memory: 1738 MiB
2021-06-27T11:02:37.835Z ee086ef908c1 main INFO [blaze.core:66] - Number of available processors: 8
2021-06-27T11:02:37.836Z ee086ef908c1 main INFO [blaze.core:67] - Successfully started Blaze version 0.17.5 in 8.2 seconds
2021-06-27T11:02:37.836Z ee086ef908c1 main INFO [blaze.core:67] - Successfully started Blaze version 0.17.6 in 8.2 seconds
```

In order to test connectivity, query the health endpoint:
Expand All @@ -47,7 +47,7 @@ that should return:
```json
{
"name": "Blaze",
"version": "0.17.5"
"version": "0.17.6"
}
```

Expand Down
12 changes: 6 additions & 6 deletions docs/deployment/manual-deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

The installation works under Windows, Linux and macOS. The only dependency is an installed OpenJDK 11. Blaze is tested with [AdoptOpenJDK][1].

Blaze runs on the JVM and comes as single JAR file. Download the most recent version [here](https://github.com/samply/blaze/releases/tag/v0.17.5). Look for `blaze-0.17.5-standalone.jar`.
Blaze runs on the JVM and comes as single JAR file. Download the most recent version [here](https://github.com/samply/blaze/releases/tag/v0.17.6). Look for `blaze-0.17.6-standalone.jar`.

After the download, you can start blaze with the following command (Linux, macOS):

```sh
java -jar blaze-0.17.5-standalone.jar -m blaze.core
java -jar blaze-0.17.6-standalone.jar -m blaze.core
```

Blaze will run with an in-memory, volatile database for testing and demo purposes.
Expand All @@ -17,14 +17,14 @@ Blaze can be run with durable storage by setting the environment variables `STOR
Under Linux/macOS:

```sh
STORAGE=standalone java -jar blaze-0.17.5-standalone.jar -m blaze.core
STORAGE=standalone java -jar blaze-0.17.6-standalone.jar -m blaze.core
```

Under Windows, you need to set the Environment variables in the PowerShell before starting Blaze:

```powershell
$Env:STORAGE="standalone"
java -jar blaze-0.17.5-standalone.jar -m blaze.core
java -jar blaze-0.17.6-standalone.jar -m blaze.core
```

This will create three directories called `index`, `transaction` and `resource` inside the current working directory, one for each database part used.
Expand All @@ -42,7 +42,7 @@ The output should look like this:
2021-06-27T11:02:37.834Z ee086ef908c1 main INFO [blaze.core:64] - JVM version: 16.0.2
2021-06-27T11:02:37.834Z ee086ef908c1 main INFO [blaze.core:65] - Maximum available memory: 1738 MiB
2021-06-27T11:02:37.835Z ee086ef908c1 main INFO [blaze.core:66] - Number of available processors: 8
2021-06-27T11:02:37.836Z ee086ef908c1 main INFO [blaze.core:67] - Successfully started Blaze version 0.17.5 in 8.2 seconds
2021-06-27T11:02:37.836Z ee086ef908c1 main INFO [blaze.core:67] - Successfully started Blaze version 0.17.6 in 8.2 seconds
```

In order to test connectivity, query the health endpoint:
Expand All @@ -62,7 +62,7 @@ that should return:
```json
{
"name": "Blaze",
"version": "0.17.5"
"version": "0.17.6"
}
```

Expand Down
12 changes: 6 additions & 6 deletions docs/performance/fhir-search.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@ time curl -s "http://localhost:8080/fhir/Observation?code=http://loinc.org|$CODE
| EPYC 7543P | 128 | 4 | 1 | 29 M | 28 M | 17861-6 | 171 k | 0.152 |
| EPYC 7543P | 128 | 4 | 1 | 29 M | 28 M | 39156-5 | 967 k | 0.804 |
| EPYC 7543P | 128 | 4 | 1 | 29 M | 28 M | 29463-7 | 1.3 M | 1.088 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 17861-6 | 1.7 M | 1.472 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 39156-5 | 9.7 M | 8.690 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 29463-7 | 13 M | 11.410 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 17861-6 | 1.7 M | 1.304 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 39156-5 | 9.7 M | 7.768 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 29463-7 | 13 M | 9.954 |

According to the measurements the time needed by Blaze to count resources only depends on the number of hits and equals roughly in **1 second per 1 million hits**.

Expand All @@ -56,9 +56,9 @@ blazectl download --server http://localhost:8080/fhir Observation -q "code=http:
| EPYC 7543P | 128 | 4 | 1 | 29 M | 28 M | 17861-6 | 171 k | 4.178 |
| EPYC 7543P | 128 | 4 | 1 | 29 M | 28 M | 39156-5 | 967 k | 24.492 |
| EPYC 7543P | 128 | 4 | 1 | 29 M | 28 M | 29463-7 | 1.3 M | 32.126 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 17861-6 | 1.7 M | 42.364 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 39156-5 | 9.7 M | 239.338 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 29463-7 | 13 M | 322.330 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 17861-6 | 1.7 M | 44.994 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 39156-5 | 9.7 M | 252.942 |
| EPYC 7543P | 128 | 30 | 10 | 292 M | 278 M | 29463-7 | 13 M | 343.950 |

According to the measurements the time needed by Blaze to deliver resources only depends on the number of hits and equals roughly in **30 seconds per 1 million hits**.

Expand Down
5 changes: 4 additions & 1 deletion modules/anomaly/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:skip-comments true}
2 changes: 1 addition & 1 deletion modules/anomaly/deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,6 @@
:coverage
{:extra-deps
{cloverage/cloverage
{:mvn/version "1.2.3"}}
{:mvn/version "1.2.4"}}

:main-opts ["-m" "cloverage.coverage" "--codecov" "-p" "src" "-s" "test"]}}}
5 changes: 4 additions & 1 deletion modules/async/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:skip-comments true}
2 changes: 1 addition & 1 deletion modules/async/deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,6 @@
:coverage
{:extra-deps
{cloverage/cloverage
{:mvn/version "1.2.3"}}
{:mvn/version "1.2.4"}}

:main-opts ["-m" "cloverage.coverage" "--codecov" "-p" "src" "-s" "test"]}}}
1 change: 1 addition & 0 deletions modules/async/test/blaze/async/comp_test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
[java.util.concurrent TimeUnit]))


(set! *warn-on-reflection* true)
(st/instrument)


Expand Down
1 change: 1 addition & 0 deletions modules/async/test/blaze/async/flow_test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
[java.util.concurrent SubmissionPublisher]))


(set! *warn-on-reflection* true)
(st/instrument)


Expand Down
5 changes: 4 additions & 1 deletion modules/byte-buffer/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:skip-comments true}
2 changes: 1 addition & 1 deletion modules/byte-buffer/deps.edn
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{:deps
{com.google.protobuf/protobuf-java
{:mvn/version "3.20.1"}}
{:mvn/version "3.21.1"}}

:aliases
{:test
Expand Down
5 changes: 4 additions & 1 deletion modules/byte-string/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:skip-comments true}
2 changes: 1 addition & 1 deletion modules/byte-string/deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
{:mvn/version "31.1-jre"}

com.google.protobuf/protobuf-java
{:mvn/version "3.20.1"}
{:mvn/version "3.21.1"}

com.fasterxml.jackson.core/jackson-databind
{:mvn/version "2.13.3"}}}
5 changes: 4 additions & 1 deletion modules/cassandra/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:skip-comments true}
2 changes: 1 addition & 1 deletion modules/cassandra/deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
:coverage
{:extra-deps
{cloverage/cloverage
{:mvn/version "1.2.3"}}
{:mvn/version "1.2.4"}}

:main-opts ["-m" "cloverage.coverage" "--codecov" "-p" "src" "-s" "test"
"-e" ".+spec"]}}}
5 changes: 4 additions & 1 deletion modules/cassandra/src/blaze/cassandra/spec.clj
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@
[java.util EnumSet]))


(set! *warn-on-reflection* true)


(s/def :blaze.cassandra/contact-points
(s/and string? #(re-matches #"[^:]+:\d+(,[^:]+:\d+)*" %)))

Expand All @@ -23,7 +26,7 @@


(s/def :blaze.cassandra/put-consistency-level
(into #{} (map #(.name %)) (EnumSet/allOf DefaultConsistencyLevel)))
(into #{} (map #(.name ^Enum %)) (EnumSet/allOf DefaultConsistencyLevel)))


(s/def :blaze.cassandra/max-concurrent-read-requests
Expand Down
1 change: 1 addition & 0 deletions modules/cassandra/test/blaze/cassandra/config_test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
[java.net InetSocketAddress]))


(set! *warn-on-reflection* true)
(st/instrument)


Expand Down
2 changes: 1 addition & 1 deletion modules/cassandra/test/blaze/cassandra_test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@
[com.datastax.oss.driver.api.core.servererrors
WriteTimeoutException WriteType]
[java.nio ByteBuffer]
#_{:clj-kondo/ignore [:unused-import]}
[java.util.concurrent CompletionStage]))


(set! *warn-on-reflection* true)
(st/instrument)


Expand Down
5 changes: 4 additions & 1 deletion modules/coll/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:skip-comments true}
2 changes: 1 addition & 1 deletion modules/coll/deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
:coverage
{:extra-deps
{cloverage/cloverage
{:mvn/version "1.2.3"}}
{:mvn/version "1.2.4"}}

:main-opts ["-m" "cloverage.coverage" "--codecov" "-p" "src" "-s" "test"
"-e" ".+spec"]}}}
5 changes: 4 additions & 1 deletion modules/cql/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,10 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:output
{:exclude-files ["^test/data_readers.clj"]}
Expand Down
2 changes: 1 addition & 1 deletion modules/cql/deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
:coverage
{:extra-deps
{cloverage/cloverage
{:mvn/version "1.2.3"}}
{:mvn/version "1.2.4"}}

:main-opts ["-m" "cloverage.coverage" "--codecov" "-p" "src" "-s" "test"
"-e" ".*spec$"]}}}
5 changes: 4 additions & 1 deletion modules/cql/src/blaze/elm/compiler/simple_values.clj
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
[blaze.elm.util :as elm-util]))


(set! *warn-on-reflection* true)


;; 1.1 Literal
;;
;; The Literal type defines a single scalar value. For example, the literal 5,
Expand All @@ -21,7 +24,7 @@

(defn- parse-int [s]
(try
(.longValue (Integer/parseInt s))
(.longValue (Integer/valueOf ^String s))
(catch NumberFormatException _
(throw-anom (ba/incorrect (format "Incorrect integer literal `%s`." s))))))

Expand Down
3 changes: 3 additions & 0 deletions modules/cql/test/blaze/elm/compiler/test_util.clj
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
[java.time OffsetDateTime ZoneOffset]))


(set! *warn-on-reflection* true)


(defn instrument-compile []
(st/instrument
`c/compile
Expand Down
5 changes: 4 additions & 1 deletion modules/db-protocols/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:skip-comments true}
5 changes: 4 additions & 1 deletion modules/db-resource-store-cassandra/.clj-kondo/config.edn
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@
{:level :error}

:reduce-without-init
{:level :warning}}
{:level :warning}

:warn-on-reflection
{:level :warning :warn-only-on-interop true}}

:skip-comments true}
2 changes: 1 addition & 1 deletion modules/db-resource-store-cassandra/deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,6 @@
:coverage
{:extra-deps
{cloverage/cloverage
{:mvn/version "1.2.3"}}
{:mvn/version "1.2.4"}}

:main-opts ["-m" "cloverage.coverage" "--codecov" "-p" "src" "-s" "test"]}}}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@
[com.datastax.oss.driver.api.core.cql SimpleStatement]))


(set! *warn-on-reflection* true)


(def get-statement
"The get statement retrieves the content according to the `hash`.
Expand Down
Loading

0 comments on commit d10c9b7

Please sign in to comment.