Security: - Add SQL identifier validation to DbOptimizer.analyze_table/vacuum_table - Move health/readiness routes to non-rate-limited pipeline Correctness: - Fix monitor reference leak in StreamingPacketsPubSub (track refs, demonitor on unsubscribe) - Persist circuit breaker half-open state transitions - Simplify ShutdownHandler.terminate to avoid pointless Process.send_after Performance: - Batch marker removal into single WebSocket event (remove_markers_batch) - Use Task.Supervisor.start_child for fire-and-forget broadcasts Dead code removal: - Remove copy_insert/regular_batch_insert/rows_to_csv from DbOptimizer - Remove dead packet_pipeline_integration tests - Remove unused telemetry event detach Other: - Fix Callsign.valid? docstring to match permissive behavior - Fix DatabaseMetrics to delegate instead of hardcoding pool stats - Add circuit breaker and encoding test coverage
13 lines
377 B
Elixir
13 lines
377 B
Elixir
defmodule Aprsme.PacketPipelineIntegrationTest do
|
|
use Aprsme.DataCase, async: false
|
|
|
|
alias Aprsme.Performance.InsertOptimizer
|
|
|
|
describe "packet pipeline under load" do
|
|
test "insert optimizer provides reasonable batch sizes" do
|
|
batch_size = InsertOptimizer.get_optimal_batch_size()
|
|
assert batch_size >= 100
|
|
assert batch_size <= 800
|
|
end
|
|
end
|
|
end
|