You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
for pkg in DistributedRateLimiter.Core DistributedRateLimiter DistributedRateLimiter.Providers.MsSql DbRateLimiter.Providers.MySql DistributedRateLimiter.Providers.Postgres; do
175
+
for pkg in DistributedRateLimiter.Core DistributedRateLimiter DistributedRateLimiter.Providers.MsSql DistributedRateLimiter.Providers.MySql DistributedRateLimiter.Providers.Postgres; do
echo "🎉 Successfully published DistributedRateLimiter v${VERSION} to NuGet!"
211
-
for pkg in DistributedRateLimiter.Core DistributedRateLimiter DistributedRateLimiter.Providers.MsSql DbRateLimiter.Providers.MySql DistributedRateLimiter.Providers.Postgres; do
211
+
for pkg in DistributedRateLimiter.Core DistributedRateLimiter DistributedRateLimiter.Providers.MsSql DistributedRateLimiter.Providers.MySql DistributedRateLimiter.Providers.Postgres; do
@@ -388,7 +390,9 @@ CREATE TABLE IF NOT EXISTS `__rate_limits` (
388
390
);
389
391
```
390
392
391
-
> MySQL/MariaDB does not support `RETURNING` on upserts so each check costs 2 round-trips instead of 1.
393
+
> MySQL/MariaDB does not support `RETURNING` on upserts so each check costs 2 round-trips instead of 1. Each check is wrapped in a transaction with `SELECT ... FOR UPDATE` to guarantee atomicity — this requires InnoDB (the default engine since MySQL 5.5).
394
+
395
+
**Minimum version:** MySQL 5.7+ or MariaDB 10.2+. `DATETIME(6)` microsecond precision requires MySQL 5.6+ / MariaDB 5.3+.
0 commit comments