Elrond
7d21362bb9
buzz-db: check events created_at floor in the app writers (phase 1)
...
Every channel-bearing INSERT INTO events now checks created_at against
database clock_timestamp() minus CREATED_AT_FLOOR_SECS on the admitted
transaction before inserting, and returns the typed, non-retryable
DbError::CreatedAtFloorRejected. The check samples the clock after BEGIN,
so the replica-fence wall min(oldest_xact_start, S) - floor - margin
still covers it. Migration 0021's deferred trigger and the writer-pool
GUC stay in place as the mixed-version backstop until phase 2.
A source policy requires the check on every channel-bearing events
INSERT and forbids production UPDATEs of events.created_at/channel_id.
The admin seed script now refuses non-local PGHOST.
Refs BUZZ-316.
Signed-off-by: Elrond <28d6302a099e5225b02c4155ac4236e4912603df2ab08dbfc2f4fef08ce598c8@buzz.block.builderlab.xyz >
2026-10-14 13:50:01 -04:00
..
2026-10-08 08:47:44 -04:00
2026-07-13 17:58:20 -04:00
2026-06-18 17:24:05 -04:00
2026-04-06 21:15:01 -04:00
2026-09-23 14:41:00 -04:00
2026-08-02 14:39:27 -04:00
2026-09-03 17:32:10 -04:00
2026-07-15 21:43:32 -07:00
2026-08-18 06:36:25 -07:00
2026-09-01 19:14:15 +00:00
2026-09-01 12:07:28 -04:00
2026-06-25 17:40:00 -07:00
2026-09-09 14:08:01 -04:00
2026-08-20 15:55:00 -04:00
2026-07-27 13:00:25 -04:00
2026-10-08 11:33:37 -04:00
2026-10-08 11:33:37 -04:00
2026-09-24 07:32:07 -06:00
2026-10-08 11:33:37 -04:00
2026-09-25 23:19:32 +00:00
2026-10-08 11:33:37 -04:00
2026-06-11 09:28:18 -07:00
2026-08-25 14:44:49 -04:00
2026-09-23 17:12:02 -04:00
2026-08-25 18:50:58 -04:00
2026-08-03 13:03:26 -07:00
2026-08-03 13:03:26 -07:00
2026-07-15 10:10:29 -04:00
2026-07-10 22:06:32 -04:00
2026-08-25 13:57:23 -07:00
2026-08-13 14:48:04 -07:00
2026-08-25 13:57:23 -07:00
2026-06-25 11:03:05 -04:00
2026-10-01 17:00:57 +01:00
2026-06-25 16:30:11 -04:00
2026-09-01 11:55:42 -06:00
2026-10-01 17:00:57 +01:00
2026-07-23 15:05:59 -07:00
2026-10-09 15:09:53 -07:00
2026-10-09 15:09:53 -07:00
2026-09-23 09:44:13 -06:00
2026-09-23 12:09:27 -07:00
2026-03-12 22:16:00 -04:00
2026-08-14 16:48:41 -04:00
2026-09-01 12:07:28 -04:00
2026-09-01 12:07:28 -04:00
2026-09-01 12:07:28 -04:00
2026-09-01 12:07:28 -04:00
2026-08-25 18:50:58 -04:00
2026-08-10 09:05:32 -07:00
2026-07-23 15:05:59 -07:00
2026-09-30 14:23:54 -04:00
2026-07-23 18:00:35 -06:00
2026-08-05 11:00:14 -07:00
2026-07-15 10:10:29 -04:00
2026-07-17 14:19:29 -06:00
2026-08-27 13:01:13 -04:00
2026-10-14 08:30:20 +11:00
2026-10-14 13:50:01 -04:00
2026-07-06 14:24:03 -07:00
2026-09-28 16:36:40 -04:00
2026-08-25 14:44:49 -04:00
2026-07-15 10:10:29 -04:00
2026-09-23 14:41:00 -04:00
2026-08-27 13:01:13 -04:00
2026-08-27 13:01:13 -04:00
2026-09-04 10:46:55 -04:00
2026-09-01 11:55:42 -06:00
2026-08-04 14:22:26 -07:00
2026-08-03 13:03:26 -07:00
2026-08-25 18:50:58 -04:00
2026-08-25 13:57:23 -07:00
2026-08-02 14:39:27 -04:00
2026-08-02 14:39:27 -04:00
2026-09-15 14:56:45 -07:00
2026-10-08 14:32:55 -04:00
2026-10-04 17:17:46 +01:00
2026-10-04 17:17:46 +01:00
2026-07-23 18:00:35 -06:00
2026-07-23 15:05:59 -07:00
2026-10-09 15:09:53 -07:00
2026-08-10 09:05:32 -07:00
2026-08-10 09:05:32 -07:00
2026-09-01 12:07:28 -04:00
2026-09-01 12:07:28 -04:00
2026-08-25 18:50:47 -04:00
2026-10-13 15:47:53 -04:00
2026-07-17 14:19:29 -06:00
2026-09-02 12:23:16 -04:00
2026-09-02 12:23:16 -04:00
2026-07-22 21:43:13 +00:00
2026-09-23 14:41:00 -04:00
2026-09-28 14:46:56 -04:00
2026-08-05 11:00:14 -07:00
2026-07-17 08:52:57 -07:00
2026-09-23 10:13:18 -06:00