Commit Graph

73 Commits

Author SHA1 Message Date
519f53940e Bump version to 4.7.0-test.4 2024-02-27 16:48:40 +00:00
098f8db4c6 Migrate device-sessions from Redis to PostgreSQL.
This migrates the device-sessions from Redis into PostgreSQL. This fixes
a performance issue in case the same DevAddr is reused many times
(e.g. devices rejoining very often or a NetID with small DevAddr space).

There were two issues:

The Redis key containing the DevAddr -> DevEUIs mapping could contain
DevEUIs that no longer used the DevAddr. This mapping would only expire
from the Redis database after none of the devices would use the DevAddr
for more than the configured device_session_ttl.

The other issue with the previous approach was that on for example a
Type 7 NetID, a single DevAddr could be re-used multiple times. As each
device-session could be stored on a different Redis Cluster instance,
there was no option to retrieve all device-sessions at once. Thus a high
re-usage of a single DevAddr would cause an increase in Redis queries.

Both issues are solved by moving the device-session into PostgreSQL
as the DevAddr is a column of the device record and thus filtering on
this DevAddr would always result in the devices using that DevAddr, as
well all device-sessions for a DevAddr can be retrieved by a single
query.

Note that to migrate the device-sessions, you must run:

chirpstack -c path/to/config migrate-device-sessions-to-postgres

A nice side-effect is that a PostgreSQL backup / restore will also
restore the device connectivity.

Closes #362 and #74.
2024-02-27 16:17:15 +00:00
be26e60111 Bump version to 4.7.0-test.3 2024-01-12 09:19:50 +00:00
e1334f647d Bump version to 4.7.0-test.2 2024-01-11 15:42:16 +00:00
cc47958839 Bump version to 4.7.0-test.1 2024-01-11 12:48:18 +00:00
f647949c05 Bump version to 4.6.0 2023-12-07 09:13:36 +00:00
20e28407d0 Bump version to 4.6.0-test.4 2023-11-28 13:01:40 +00:00
f13a5f492c Bump version to 4.6.0-test.3 2023-11-22 11:28:00 +00:00
5fd56e7e3c Bump version to 4.6.0-test.2 2023-11-20 12:33:52 +00:00
091909e8ea Bump version to 4.6.0-test.1 2023-10-26 15:38:37 +01:00
503beaa2fd Bump version to 4.5.1 2023-10-05 10:20:32 +01:00
a402b487f8 Update dependencies. 2023-09-18 16:22:05 +01:00
4ebee8d614 Bump version to 4.5.0 2023-09-11 16:58:25 +01:00
81ac49ff8f Bump version to 4.5.0-test.3 2023-09-07 16:53:20 +01:00
f06f11334e Bump version to 4.5.0-test.2 2023-09-05 12:14:35 +01:00
295cd5e4b1 Bump version to 4.5.0-test.1 2023-09-04 15:06:38 +01:00
cd57929b43 Update dependencies. 2023-09-04 14:10:27 +01:00
7ff12f5ae7 Bump version to 4.4.3 2023-07-24 11:54:31 +01:00
f66186bb7b Bump version to 4.4.2 2023-07-14 10:56:00 +01:00
9d543603d5 Bump version to 4.4.1 2023-07-05 11:18:51 +01:00
407ebd2d3f Bump version to 4.4.0 2023-06-26 12:05:45 +00:00
3f77203516 Bump version to 4.4.0-test.1 2023-05-30 14:08:45 +00:00
08d69502de Bump version to 4.3.2 2023-04-26 13:02:10 +01:00
0a3fcaeb2d Bump version to 4.3.1 2023-04-10 12:24:52 +01:00
101b155d91 Update dependencies. 2023-04-10 11:10:52 +01:00
8fe0c7c6c2 Improve Rust SDK build flags / reduce dependencies.
This reduces the amount of dependencies in case not all features are
being used. E.g. tonic is only needed if using gRPC and pbjson,
pbjson-types and serde are only needed if using the JSON serialization.
2023-03-28 21:11:54 +01:00
50f8093c07 Bump version to 4.3.0 2023-03-08 09:20:50 +00:00
eaad8586a1 Bump version to 4.3.0-test.3 2023-03-02 14:32:56 +00:00
4b41893f42 Bump version to 4.3.0-test.2 2023-02-28 12:07:16 +00:00
3db01e66c0 Bump version to 4.3.0-test.1 2023-02-24 11:59:12 +00:00
5953542a72 Update dependencies. 2023-02-06 12:23:44 +00:00
1d2f627bbb Bump version to 4.2.0 2023-01-24 12:23:44 +00:00
25f1b224f7 Bump tokio from 1.23.1 to 1.24.2 (#97)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.23.1 to 1.24.2.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/commits)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-23 09:49:56 +00:00
b6209d760e Bump version to 4.2.0-test.1 2023-01-16 11:14:05 +00:00
85a064ea5b Bump tokio from 1.21.1 to 1.23.1 (#78)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.21.1 to 1.23.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.21.1...tokio-1.23.1)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-11 10:49:32 +00:00
927a68a436 Bump version to 4.1.3 2022-12-27 11:14:43 +00:00
e2682db6e2 Bump version to 4.1.2 2022-12-16 09:44:47 +00:00
fd061d4657 Bump version to 4.1.1 2022-12-13 13:48:42 +00:00
c874c97c96 Bump version to 4.1.0 2022-12-06 09:36:55 +00:00
c1c89d06f8 Bump version to 4.1.0-test.1 2022-11-28 15:17:53 +00:00
84dc8fd333 Bump version to 4.0.5 2022-11-28 10:23:54 +00:00
bfcff17f34 Bump version to 4.0.4 2022-11-15 10:13:35 +00:00
0ac4ef51e2 Bump version to 4.0.3 2022-11-07 11:40:11 +00:00
d6cc9d4fd6 Bump version to 4.0.3-test.1 2022-10-21 07:37:25 +01:00
a91fb1f73e Bump version to 4.0.2 2022-09-28 13:05:13 +01:00
ea0f84b93d Bump version to 4.0.1 2022-09-28 09:14:53 +01:00
bb188949df Update dependencies + fix clippy warnings. 2022-09-26 12:58:01 +01:00
84a1c6e1be Bump version to 4.0.0 2022-09-14 09:43:05 +01:00
cba8da2d05 Bump version to 4.0.0-rc.4 2022-09-05 22:47:47 +01:00
ca2961c7b6 Bump version to 4.0.0-rc.3 2022-08-23 08:59:05 +01:00