Skip to content

Commit b4dc0aa

Browse files
committed
Change log is updated for v2.0.1.0
1 parent 07c5f21 commit b4dc0aa

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed

CHANGES.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Eventide Postgres Changes
2+
3+
### 2.0.1.0
4+
5+
Wed Oct 12 2022
6+
7+
Updates to the message_store and message_store-postgres libraries to support Message DB [v1.3.0](https://github.com/message-db/message-db/releases/tag/v1.3.0).
8+
9+
The message_store-postgres library’s Get::Stream::Last class’s actuator supports an optional parameter named `type`. This is in addition to the `stream_name` parameter that has always been part of the Get::Stream::Last actuator’s signature.
10+
11+
Libraries affected:
12+
13+
- message-store (v2.3.2.0)
14+
- message-store-postgres (v2.4.4.0)
15+
16+
### 2.0.0.0
17+
18+
December 2019
19+
20+
WARNING:
21+
22+
The Eventide v2 code is incompatible with a v1 message store database. Don't update the Eventide toolkit code until you're ready to update your message store database.
23+
24+
## Test Bench
25+
26+
All tests in the v2 stack have been ported and updated to the new version of [Test Bench](https://github.com/test-bench/test-bench) released in October, 2019.
27+
28+
## Postgres Message Store
29+
30+
- This library is deprecated. It's replaced with Message DB: [https://github.com/message-db/message-db](https://github.com/message-db/message-db)
31+
32+
## Message DB
33+
34+
- Formerly, `postgres-message-store` (see above).
35+
- **Note: There are no changes to the `messages` table, and no data migration is necessary**
36+
- **An update tool is provided to make the structural upgrades to the database**
37+
- The executables named `evt-pg-*` are renamed to `mdb-*`
38+
- **[breaking change]** The `get_category_messages` server function supports pub/sub directly by receiving a `correlation` argument and composing the correlation metadata query condition directly in the server function ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-messages-from-a-stream](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-messages-from-a-stream))
39+
- **[breaking change]** The message_store database and its objects are contained in a Postgres schema named `message_store`
40+
- **[breaking change]** The `get_category_messages` server function supports consumer groups via the `consumer_group_member` and `consumer_group_size` parameters ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-messages-from-a-category](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-messages-from-a-category))
41+
- The retrieval server functions provide debugging output that is activated via the Postgres setting, `message_store.debug_get` ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#debugging-output](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#debugging-output))
42+
- The write server function provides debugging output that is activated via the Postgres setting, `message_store.debug_write` ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#debugging-output](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#debugging-output))
43+
- The `message_store.debug` Postgres setting activates both the retrieval and write debug output ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#debugging-output](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#debugging-output))
44+
- `id` stream parsing function ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-the-id-from-a-stream-name](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-the-id-from-a-stream-name))
45+
- `cardinal_id` stream parsing function ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-the-cardinal-id-from-a-stream-name](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-the-cardinal-id-from-a-stream-name))
46+
- `acquire_lock` function encapsulates the application of the advisory lock used by the `write_message` function ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-message-store-database-schema-version](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#get-message-store-database-schema-version))
47+
- Database management tool output is clarified
48+
- **[breaking change]** All server function parameter names are no longer named with underscore prefixes ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html](http://docs.eventide-project.org/user-guide/message-store/server-functions.html))
49+
- Indexes are no longer built with the `CONCURRENTLY` option ([http://docs.eventide-project.org/user-guide/message-store/anatomy.html#source-code](http://docs.eventide-project.org/user-guide/message-store/anatomy.html#source-code))
50+
- **[breaking change]** The `messages_category_global_position_idx` is removed and replaced with the `messages_category` index, which now indexes correlation metadata
51+
- **[breaking change]** The `messages_stream_name_position_uniq_idx` is removed and replaced with the `messages_stream` index, which now indexes correlation metadata
52+
- **[breaking change]** The `messages_id_uniq_idx` is removed and replaced with the `messages_id` index
53+
- Message DB RubyGem: [https://github.com/message-db/ruby-gem](https://github.com/message-db/ruby-gem)
54+
- Message DB NPM Module: [https://github.com/message-db/npm-module](https://github.com/message-db/npm-module)
55+
- Improvements to interactive tests ([https://github.com/eventide-project/postgres-message-store/tree/master/test](https://github.com/eventide-project/postgres-message-store/tree/master/test))
56+
57+
## Message Store Client
58+
59+
- `MessageStore::Postgres::Get` receives the `correlation` argument and passes it to the message store database's retrieval functions ([http://docs.eventide-project.org/user-guide/retrieving/batch.html#retrieving-correlated-messages](http://docs.eventide-project.org/user-guide/retrieving/batch.html#retrieving-correlated-messages))
60+
- `MessageStore::Postgres::Get` receives the `consumer_group_member` and `consumer_group_size` arguments and passes it to the message store database's retrieval functions ([http://docs.eventide-project.org/user-guide/retrieving/batch.html#consumer-groups](http://docs.eventide-project.org/user-guide/retrieving/batch.html#consumer-groups))
61+
- Stream name utilities now support stream name with compound IDs ([http://docs.eventide-project.org/user-guide/stream-names/message-store-stream-name.html#stream-name](http://docs.eventide-project.org/user-guide/stream-names/message-store-stream-name.html#stream-name))
62+
- Cardinal IDs are formalized as part of the stream name utilities ([http://docs.eventide-project.org/user-guide/stream-names/message-store-stream-name.html#stream-name](http://docs.eventide-project.org/user-guide/stream-names/message-store-stream-name.html#stream-name))
63+
- Concrete `Get::Category` and `Get::Stream` classes can be constructed, configured, and used directly without using the abstract `Get` factory
64+
- Correlation is supported exclusively by the `Get::Category` implementation
65+
- Consumer groups are supported exclusively by the `Get::Category` implementation
66+
67+
## Messaging
68+
69+
- Stream name composition and parsing supports all same features as the stream name composition and parsing in the message store library ([http://docs.eventide-project.org/user-guide/stream-names/messaging-stream-name.html](http://docs.eventide-project.org/user-guide/stream-names/messaging-stream-name.html))
70+
71+
## Consumer
72+
73+
- **[breaking change]** Entity stream names are no longer supported by consumers ([http://docs.eventide-project.org/user-guide/consumers.html](http://docs.eventide-project.org/user-guide/consumers.html))
74+
- Correlation query conditions are no longer composed in the consumer and passed to the message store database server functions. The message store database composes the correlation query conditions within its server functions.
75+
- Consumer group query conditions are no longer composed in the consumer and passed to the message store database server functions. The message store database composes the correlation query conditions within its server functions.
76+
77+
## Documentation
78+
79+
- [Message DB](http://docs.eventide-project.org/user-guide/message-db/) documentation is improved
80+
- The `MessageStore::Postgres::Get` module is documented ([http://docs.eventide-project.org/user-guide/retrieving/batch.html](http://docs.eventide-project.org/user-guide/retrieving/batch.html))
81+
- Debugging output for the Postgres server functions is documented ([http://docs.eventide-project.org/user-guide/message-store/server-functions.html#debugging-output](http://docs.eventide-project.org/user-guide/message-store/server-functions.html#debugging-output))
82+
- Stream name utilities documentation is updated and improved: [http://docs.eventide-project.org/user-guide/stream-names](http://docs.eventide-project.org/user-guide/stream-names/)
83+
- Consumer user guide is improved and is more consistent with `MessageStore::Postgres::Get` documentation: [http://docs.eventide-project.org/user-guide/consumers.html](http://docs.eventide-project.org/user-guide/consumers.html)
84+
- The settings file location override is documented ([http://docs.eventide-project.org/user-guide/session.html#overriding-the-setting-file-location](http://docs.eventide-project.org/user-guide/session.html#overriding-the-setting-file-location))

0 commit comments

Comments
 (0)