164 Commits

Author SHA1 Message Date
Klaas van Schelven
c87582fba6 Don't fsync
It's (very, in the order of 10ms) costly.
As I understand it now: the reason is for durability in case of power outages. But that's not
what we're looking for here. We merely want "available in another process". Which I think should
just be the case after a flush().
2024-04-26 15:26:41 +02:00
Klaas van Schelven
58435754e0 Digest immediately implemented 2024-04-26 14:48:07 +02:00
Klaas van Schelven
41e5331f35 Comment about relative performance of some key steps in Envelope unpacking 2024-04-25 15:34:51 +02:00
Klaas van Schelven
234008bee3 Don't subject non-event types to event-type size limit 2024-04-25 14:59:24 +02:00
Klaas van Schelven
58d448350a Implement MAX sizes for event & envelope 2024-04-25 14:56:11 +02:00
Klaas van Schelven
387234b847 Read the Envelope specification once more, implement some more details 2024-04-25 13:39:52 +02:00
Klaas van Schelven
fb2ddc718c Log non-event items 2024-04-25 13:09:07 +02:00
Klaas van Schelven
4d996e0c51 Use my own impl. of conent_encoding based decompress
In the process: make it read-read rather than read-write
2024-04-25 12:10:15 +02:00
Klaas van Schelven
c3af388461 envelope endpoint: use StreamingEnvelopeParser
in the process, the DRF was removed (it's non-streaming)
2024-04-25 11:39:19 +02:00
Klaas van Schelven
5d874f7a46 EnvelopeParser's read_until: reimplement using output-stream; write tests 2024-04-25 08:54:01 +02:00
Klaas van Schelven
41a4913299 Implement SNAPPEA_TASK_ALWAYS_EAGER 2024-04-19 21:41:42 +02:00
Klaas van Schelven
6bb7ce89a1 Factor out delay_on_commit 2024-04-19 08:18:19 +02:00
Klaas van Schelven
c50780ab4e Use atomic transactions in views 2024-04-18 13:15:46 +02:00
Klaas van Schelven
5ae0a8227f Implement bookkeeping of events_at
(I didn't think the effects on regressions through, but this will at least
manifest itself because you cannot mark an issue as "fixed in" a release
in which it occurs. It will also show up once we start displaying "events_at"
in the UI, which should be "soon")
2024-04-16 13:25:18 +02:00
Klaas van Schelven
d89e3d4dd5 Add 'next-materialized historic annotation 2024-04-16 09:31:12 +02:00
Klaas van Schelven
8e44f7f68e Unmute reason: show in email alert 2024-04-15 10:17:18 +02:00
Klaas van Schelven
ad93e22fff Fix the double-creating of TurningPoints for time-based-unmute 2024-04-15 09:55:22 +02:00
Klaas van Schelven
280bd2172b History page: 'mostly done' (a first setup) 2024-04-12 16:07:25 +02:00
Klaas van Schelven
1cf19c83d5 Various code-clarification 2024-04-12 08:38:46 +02:00
Klaas van Schelven
f098802fde Event already exists: return 400; implement with one less query 2024-04-11 11:03:41 +02:00
Klaas van Schelven
4dfefec468 denormalize/cache last_frame_* and transaction on Event and Issue
for performance, but also fixes:

* not just the 'last frame' but the 'last relevant frame' (in-app)
* truncation is properly done (matching the DB size, and for each of the fields)
2024-04-10 09:12:15 +02:00
Klaas van Schelven
21c4904524 Implement friendly_id 2024-04-09 11:09:31 +02:00
Klaas van Schelven
1b37298a95 ingest_order: first setup 2024-04-08 22:13:52 +02:00
Klaas van Schelven
4016f13c07 Move truncatechars to the only place we actually need it
i.e. when storing stuff in the DB (other cases are taken care of on-render
2024-04-08 16:22:00 +02:00
Klaas van Schelven
da3f0325a2 Grouping: expose the recent data-modelling work in the UI 2024-04-08 16:17:45 +02:00
Klaas van Schelven
652823f8c3 Store calculated type and value on issue and event and use these values in the templates 2024-04-08 15:30:41 +02:00
Klaas van Schelven
48307daa0f Introduce 'Grouping' data-modeling 2024-04-08 11:41:15 +02:00
Klaas van Schelven
f37d7b7c0e guard against issue-without-event-creation 2024-04-03 11:29:16 +02:00
Klaas van Schelven
3bda3d25cc project_id => project_pk, at least in urls and view signatures
some consistency
2024-03-26 23:13:49 +01:00
Klaas van Schelven
301b0a61f2 Allow > 3 envelope parts (silently ignore, but log) 2024-03-16 16:14:07 +01:00
Klaas van Schelven
afe756a235 make request.data a local var to ensure it's sent as part of capture_stacktrace(..) 2024-03-16 15:55:03 +01:00
Klaas van Schelven
0873adfb57 capture_stacktrace_2 has been removed; back to regular one 2024-03-16 15:42:53 +01:00
Klaas van Schelven
52bb5a253b Introduce capture_stacktrace_2 2024-03-15 20:36:10 +01:00
Klaas van Schelven
624cfd3f0f IssueStatemanager improvements
* triggerd_by_event instead of implicitly called (see test for why)
* IngruentStateException check
2024-03-14 20:15:31 +01:00
Klaas van Schelven
1a036e6e48 Implement unmute-after-time 2024-03-08 20:53:31 +01:00
Klaas van Schelven
20361ce75a Date/issue_count correct in list_view 2024-02-20 17:49:48 +01:00
Klaas van Schelven
9c8f4e2c87 Don't fail (KeyError) for newly created projects 2024-02-07 23:11:50 +01:00
Klaas van Schelven
4a3c98c74f implement capture_stacktrace; use it for capturing unexpected situations with envelope handling 2024-02-07 23:07:49 +01:00
Klaas van Schelven
84885cf9ae Various fixes after visiting the running server
(it's been a while)
2024-01-15 23:20:03 +01:00
Klaas van Schelven
8b67450c5b Push get_pc_registry() call to to of digest_event() 2024-01-14 10:36:34 +01:00
Klaas van Schelven
6c097b215a Rename -> IssueStateManager 2024-01-10 22:44:56 +01:00
Klaas van Schelven
8766e2ccfe new-issue and regression alerts (not actually implemented, but the call is) 2024-01-10 17:14:49 +01:00
Klaas van Schelven
12e24e9146 Fix the tests 2024-01-10 17:08:09 +01:00
Klaas van Schelven
f96724a4db celery: basic config (quickstart); alerts startapp
I've checked that this celery config actually works (also with TASK_ALWAYS_EAGER=False)
2024-01-09 19:16:07 +01:00
Klaas van Schelven
186ddb62cf Event.from_ingested 2024-01-07 22:31:07 +01:00
Klaas van Schelven
6a27a248af Split up ingest/digest (and have a test for process_event) 2024-01-07 22:09:38 +01:00
Klaas van Schelven
3810ba18f4 Global registry for PCs: init-once 2024-01-05 22:47:19 +01:00
Klaas van Schelven
94661b4bb8 Swap FK event<->issue 2024-01-05 22:38:59 +01:00
Klaas van Schelven
e3433e8ddb server-side timestamp fixes (untested) 2024-01-05 20:40:41 +01:00
Klaas van Schelven
030f64d874 Don't use auto_now_add; you can't override that 2024-01-05 20:37:05 +01:00