Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge Back Release v0.24.0 #1474

Merged
merged 1 commit into from
Feb 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,27 @@
# Changelog

## v0.24.0

### Notes

This release contains performance improvements for FHIR search and CQL. Counting the number of resources by using `_summary=count` in FHIR search with more than one search parameter uses all cores now and so is up to 10 times faster than before. CQL queries which test the existence of multiple condition codes are up to twice as fast.

### Enhancements

* Implement Below Modifier for Canonical References ([#1418](https://github.com/samply/blaze/issues/1418))
* Add Admin UI ([#1408](https://github.com/samply/blaze/pull/1408))

### Bugfixes

* Fix FHIR Search Combination of Sorting and Token Search ([#1431](https://github.com/samply/blaze/issues/1431))
* FHIR Search _id Queries Should Not Return Deleted Patients ([#1415](https://github.com/samply/blaze/issues/1397))

### Performance

* Improve FHIR Search Count Performance ([#1466](https://github.com/samply/blaze/pull/1466))

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

## v0.23.4

### Bugfixes
Expand Down
2 changes: 1 addition & 1 deletion DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ In addition to the REPL development inside a single module, it's possible to run
* create a release branch called `release/v<version>` like `release/v0.13.1`
* rename every occurrence of the old version, say `0.13.0` into the new version, say `0.13.1`
* rename every occurrence of old Docker images like `samply/blaze:0.13` into the new image, say `samply/blaze:0.14`
* update the last changed date in `blaze.rest-api.capabilities`
* update the release date in namespace `blaze.system`
* update the CHANGELOG based on the milestone
* create a commit with the title `Release v<version>`
* create a PR from the release branch into master
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ RUN apt-get update && apt-get upgrade -y && \
rm -rf /var/lib/apt/lists/

RUN mkdir -p /app/data && chown 1001:1001 /app/data
COPY target/blaze-0.23.4-standalone.jar /app/
COPY target/blaze-0.24.0-standalone.jar /app/

WORKDIR /app
USER 1001
Expand All @@ -19,4 +19,4 @@ ENV INDEX_DB_DIR="/app/data/index"
ENV TRANSACTION_DB_DIR="/app/data/transaction"
ENV RESOURCE_DB_DIR="/app/data/resource"

CMD ["java", "-jar", "blaze-0.23.4-standalone.jar"]
CMD ["java", "-jar", "blaze-0.24.0-standalone.jar"]
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,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.23.4][5]
Latest release: [v0.24.0][5]

## Quick Start

Expand All @@ -25,7 +25,7 @@ In order to run Blaze just execute the following:

```sh
docker volume create blaze-data
docker run -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.23
docker run -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.24
```

Blaze will create multiple directories inside the `blaze-data` volume on its first start and use the same directories on subsequent starts.
Expand Down Expand Up @@ -74,7 +74,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.23.4>
[5]: <https://github.com/samply/blaze/releases/tag/v0.24.0>
[6]: <https://www.yourkit.com/java/profiler/>
[7]: <https://www.yourkit.com/.net/profiler/>
[8]: <https://www.yourkit.com/youmonitor/>
Expand Down
2 changes: 1 addition & 1 deletion build.clj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
(:require [clojure.tools.build.api :as b]))

(def lib 'samply/blaze)
(def version "0.23.4")
(def version "0.24.0")
(def class-dir "target/classes")
(def basis (b/create-basis {:project "deps.edn"}))
(def uber-file (format "target/%s-%s-standalone.jar" (name lib) version))
Expand Down
2 changes: 1 addition & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
services:
blaze:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
environment:
BASE_URL: "http://localhost:8080"
JAVA_TOOL_OPTIONS: "-Xmx2g"
Expand Down
2 changes: 1 addition & 1 deletion docs/.vitepress/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ export default defineConfig({
nav: [
{text: 'Home', link: '/'},
{
text: "v0.23.4",
text: "v0.24.0",
items: [
{
text: 'Changelog',
Expand Down
2 changes: 1 addition & 1 deletion docs/authentication/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ services:
volumes:
- "../../.github/openid-auth-test/realm.json:/tmp/realm.json"
blaze:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
environment:
BASE_URL: "http://localhost:8080"
JAVA_TOOL_OPTIONS: "-Xmx2g"
Expand Down
4 changes: 2 additions & 2 deletions docs/consistency/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ services:
HEAP_NEWSIZE: "200M"

blaze-1:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
hostname: "blaze-1"
environment:
JAVA_TOOL_OPTIONS: "-Xmx4g -Dclojure.server.repl='{:address,\"0.0.0.0\",:port,5555,:accept,clojure.core.server/repl}'"
Expand Down Expand Up @@ -178,7 +178,7 @@ services:
restart: unless-stopped

blaze-2:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
hostname: "blaze-2"
environment:
JAVA_TOOL_OPTIONS: "-Xmx4g"
Expand Down
2 changes: 1 addition & 1 deletion docs/cql-queries.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ The most accessible way to create and execute CQL queries is to use the Quality
If you don't already have Blaze running, you can read about how to do it in [Deployment](deployment/README.md). If you have Docker available just run:

```
docker run -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.23
docker run -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.24
```

Start the Quality Reporting UI. You should see an empty measure list.
Expand Down
2 changes: 1 addition & 1 deletion docs/cql-queries/blazectl.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ cd blaze
If you don't already have Blaze running, you can read about how to do it in [Deployment](../deployment/README.md). If you have Docker available just run:

```sh
docker run -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.23
docker run -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.24
```

## Import some data
Expand Down
2 changes: 1 addition & 1 deletion docs/cql-queries/command-line.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ cd blaze
If you don't already have Blaze running, you can read about how to do it in [Deployment](../deployment/README.md). If you have Docker available just run:

```sh
docker run -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.23
docker run -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.24
```

## Import some data
Expand Down
4 changes: 2 additions & 2 deletions docs/data-sync/copy/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
services:
src:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
environment:
BASE_URL: "http://localhost:8080"
JAVA_TOOL_OPTIONS: "-Xmx2g"
Expand All @@ -11,7 +11,7 @@ services:
- "blaze-data-src:/app/data"

dst:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
environment:
BASE_URL: "http://localhost:8082"
SERVER_PORT: "8082"
Expand Down
2 changes: 1 addition & 1 deletion docs/data-sync/subscription/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
services:
blaze:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
environment:
BASE_URL: "http://localhost:8080"
JAVA_TOOL_OPTIONS: "-Xmx2g"
Expand Down
2 changes: 1 addition & 1 deletion docs/database/migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ backup of all the data Blaze has written to disk, **plan for a downtime**, delet
Please start Blaze with a shell assuming that you use the volume `blaze-data`:

```sh
docker run -it -v blaze-data:/app/data samply/blaze:0.23 sh
docker run -it -v blaze-data:/app/data samply/blaze:0.24 sh
```

in that shell, go into `/app/data` and list all directories:
Expand Down
4 changes: 2 additions & 2 deletions docs/deployment/distributed.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ docker-compose exec cassandra-1 cqlsh -u cassandra -p cassandra

```yaml
blaze-1:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
hostname: "blaze-1"
environment:
JAVA_TOOL_OPTIONS: "-Xmx4g"
Expand Down Expand Up @@ -202,7 +202,7 @@ blaze-1:
- cassandra-3

blaze-2:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
hostname: "blaze-2"
environment:
JAVA_TOOL_OPTIONS: "-Xmx4g"
Expand Down
4 changes: 2 additions & 2 deletions docs/deployment/distributed/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ services:
HEAP_NEWSIZE: "200M"

blaze-1:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
hostname: "blaze-1"
environment:
JAVA_TOOL_OPTIONS: "-Xmx4g"
Expand Down Expand Up @@ -102,7 +102,7 @@ services:
restart: unless-stopped

blaze-2:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
hostname: "blaze-2"
environment:
JAVA_TOOL_OPTIONS: "-Xmx4g"
Expand Down
10 changes: 5 additions & 5 deletions docs/deployment/docker-deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ docker volume create blaze-data
## Blaze

```sh
docker run -d --name blaze -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.23
docker run -d --name blaze -p 8080:8080 -v blaze-data:/app/data samply/blaze:0.24
```

Blaze should log something like this:
Expand All @@ -27,7 +27,7 @@ Blaze should log something like this:
2023-06-09T08:30:30.126Z b45689460ff3 main INFO [blaze.core:67] - JVM version: 17.0.7
2023-06-09T08:30:30.126Z b45689460ff3 main INFO [blaze.core:68] - Maximum available memory: 1738 MiB
2023-06-09T08:30:30.126Z b45689460ff3 main INFO [blaze.core:69] - Number of available processors: 2
2023-06-09T08:30:30.126Z b45689460ff3 main INFO [blaze.core:70] - Successfully started 🔥 Blaze version 0.23.4 in 9.0 seconds
2023-06-09T08:30:30.126Z b45689460ff3 main INFO [blaze.core:70] - Successfully started 🔥 Blaze version 0.24.0 in 9.0 seconds
```

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

Expand All @@ -60,7 +60,7 @@ A Docker Compose file looks like this:
```text
services:
blaze:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
environment:
BASE_URL: "http://localhost:8080"
JAVA_TOOL_OPTIONS: "-Xmx2g"
Expand All @@ -81,7 +81,7 @@ Per default, Blaze supports FHIR Search on all FHIR R4 search parameters. Howeve
```text
services:
blaze:
image: "samply/blaze:0.23"
image: "samply/blaze:0.24"
environment:
DB_SEARCH_PARAM_BUNDLE: "/app/custom-search-parameters.json"
ports:
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 or 17 with 17 recommended. Blaze is tested with [Eclipse Temurin][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.23.4). Look for `blaze-0.23.4-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.24.0). Look for `blaze-0.24.0-standalone.jar`.

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

```sh
java -jar blaze-0.23.4-standalone.jar
java -jar blaze-0.24.0-standalone.jar
```

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.23.4-standalone.jar
STORAGE=standalone java -jar blaze-0.24.0-standalone.jar
```

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

```powershell
$Env:STORAGE="standalone"
java -jar blaze-0.23.4-standalone.jar
java -jar blaze-0.24.0-standalone.jar
```

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.23.4 in 8.2 seconds
2021-06-27T11:02:37.836Z ee086ef908c1 main INFO [blaze.core:67] - Successfully started Blaze version 0.24.0 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.23.4"
"version": "0.24.0"
}
```

Expand Down
2 changes: 1 addition & 1 deletion docs/performance/import.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import-once() {
-e DB_RESOURCE_INDEXER_THREADS=16 \
-p 8080:8080 \
-p 8081:8081 \
-d samply/blaze:0.23
-d samply/blaze:0.24

../../.github/scripts/wait-for-url.sh http://localhost:8080/health

Expand Down
4 changes: 2 additions & 2 deletions modules/frontend/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion modules/frontend/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "blaze-frontend",
"version": "0.23.4",
"version": "0.24.0",
"private": true,
"scripts": {
"dev": "vite dev",
Expand Down
4 changes: 2 additions & 2 deletions src/blaze/system.clj
Original file line number Diff line number Diff line change
Expand Up @@ -92,9 +92,9 @@
(into {} (map (fn [[k v]] [k (resolvef k v)])) (ig/find-derived config key))))

(def ^:private root-config
{:blaze/version "0.23.4"
{:blaze/version "0.24.0"

:blaze/release-date "2024-01-10"
:blaze/release-date "2024-02-06"

:blaze/clock {}

Expand Down