-
Global information
- Generated on Fri Jan 23 04:59:44 2026
- Log file: /home/postgres/pg_data/data/pg_log/postgresql-2026-01-23_060000.log
- Parsed 1,737,369 log entries in 42s
- Log start from 2026-01-23 06:00:00 to 2026-01-23 06:59:40
-
Overview
Global Stats
- 1,038 Number of unique normalized queries
- 206,450 Number of queries
- 3h33m30s Total query duration
- 2026-01-23 06:00:00 First query
- 2026-01-23 06:59:40 Last query
- 6,593 queries/s at 2026-01-23 06:05:02 Query peak
- 3h33m30s Total query duration
- 2m31s Prepare/parse total duration
- 56s937ms Bind total duration
- 3h30m1s Execute total duration
- 40 Number of events
- 3 Number of unique normalized events
- 34 Max number of times the same event was reported
- 0 Number of cancellation
- 35 Total number of automatic vacuums
- 50 Total number of automatic analyzes
- 886 Number temporary file
- 183.22 MiB Max size of temporary file
- 5.74 MiB Average size of temporary file
- 4,044 Total number of sessions
- 12 sessions at 2026-01-23 06:55:59 Session peak
- 2d10h42m23s Total duration of sessions
- 52s261ms Average duration of sessions
- 51 Average queries per session
- 3s167ms Average queries duration per session
- 49s93ms Average idle time per session
- 4,044 Total number of connections
- 39 connections/s at 2026-01-23 06:43:48 Connection peak
- 6 Total number of databases
SQL Traffic
Key values
- 6,593 queries/s Query Peak
- 2026-01-23 06:05:02 Date
SELECT Traffic
Key values
- 3,012 queries/s Query Peak
- 2026-01-23 06:05:02 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 181 queries/s Query Peak
- 2026-01-23 06:01:53 Date
Queries duration
Key values
- 3h33m30s Total query duration
Prepared queries ratio
Key values
- 0.00 Ratio of bind vs prepare
- 0.00 % Ratio between prepared and "usual" statements
General Activity
↑ Back to the top of the General Activity tableDay Hour Count Min duration Max duration Avg duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jan 23 06 206,450 0ms 14m34s 61ms 5m23s 5m38s 20m18s Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jan 23 06 59,235 601 0ms 0ms 0ms 0ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jan 23 06 27,784 1,738 13 78 0ms 0ms 0ms 0ms Day Hour Prepare Bind Bind/Prepare Percentage of prepare Jan 23 06 24,250 68,109 2.81 25.25% Day Hour Count Average / Second Jan 23 06 4,044 1.12/s Day Hour Count Average Duration Average idle time Jan 23 06 4,044 52s261ms 49s144ms -
Connections
Established Connections
Key values
- 39 connections Connection Peak
- 2026-01-23 06:43:48 Date
Connections per database
Key values
- acaweb_fx Main Database
- 4,044 connections Total
Connections per user
Key values
- postgres Main User
- 4,044 connections Total
Connections per host
Key values
- 192.168.0.74 Main host with 1453 connections
- 4,044 Total connections
Host Count 127.0.0.1 116 192.168.0.114 1 192.168.0.216 101 192.168.0.74 1,453 192.168.1.145 111 192.168.1.15 34 192.168.1.20 132 192.168.1.231 20 192.168.1.239 2 192.168.1.90 58 192.168.2.126 62 192.168.2.182 12 192.168.2.82 48 192.168.3.199 36 192.168.4.116 1 192.168.4.142 1,166 192.168.4.150 10 192.168.4.238 16 192.168.4.33 90 192.168.4.59 7 192.168.4.98 330 [local] 238 -
Sessions
Simultaneous sessions
Key values
- 12 sessions Session Peak
- 2026-01-23 06:55:59 Date
Histogram of session times
Key values
- 3,366 0-500ms duration
Sessions per database
Key values
- acaweb_fx Main Database
- 4,044 sessions Total
Sessions per user
Key values
- postgres Main User
- 4,044 sessions Total
Sessions per host
Key values
- 192.168.0.74 Main Host
- 4,044 sessions Total
Host Count Total Duration Average Duration 127.0.0.1 116 36m50s 19s52ms 192.168.0.114 1 5m 5m 192.168.0.216 101 1m2s 621ms 192.168.0.74 1,453 6h59m2s 17s304ms 192.168.1.145 111 3h7m56s 1m41s 192.168.1.15 34 3h15m45s 5m45s 192.168.1.20 132 13h59m42s 6m21s 192.168.1.231 20 9h53m38s 29m40s 192.168.1.239 2 17ms 8ms 192.168.1.90 58 3m34s 3s702ms 192.168.2.126 62 6s681ms 107ms 192.168.2.182 12 983ms 81ms 192.168.2.82 48 11s866ms 247ms 192.168.3.199 36 1s387ms 38ms 192.168.4.116 1 380ms 380ms 192.168.4.142 1,166 8m3s 414ms 192.168.4.150 10 20h6m35s 2h39s 192.168.4.238 16 21s928ms 1s370ms 192.168.4.33 90 1m51s 1s240ms 192.168.4.59 7 38s877ms 5s553ms 192.168.4.98 330 31s344ms 94ms [local] 238 21m27s 5s409ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 11,286 buffers Checkpoint Peak
- 2026-01-23 06:06:54 Date
- 209.910 seconds Highest write time
- 0.092 seconds Sync time
Checkpoints Wal files
Key values
- 6 files Wal files usage Peak
- 2026-01-23 06:06:54 Date
Checkpoints distance
Key values
- 182.04 Mo Distance Peak
- 2026-01-23 06:06:54 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Jan 23 06 35,086 1,896.943s 0.152s 1,897.469s Day Hour Added Removed Recycled Synced files Longest sync Average sync Jan 23 06 0 0 21 1,760 0.079s 0.001s Day Hour Count Avg time (sec) Jan 23 06 0 0s Day Hour Mean distance Mean estimate Jan 23 06 28,643.42 kB 65,275.42 kB -
Temporary Files
Size of temporary files
Key values
- 183.90 MiB Temp Files size Peak
- 2026-01-23 06:30:11 Date
Number of temporary files
Key values
- 62 per second Temp Files Peak
- 2026-01-23 06:32:21 Date
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Jan 23 06 886 4.97 GiB 5.74 MiB Queries generating the most temporary files (N)
Rank Count Total size Min size Max size Avg size Query 1 28 1.65 GiB 2.76 MiB 183.22 MiB 60.47 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = ? ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = ? ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = ?) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, ?::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> ? ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = ?) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = ? where (ok.r is null or ok.r = ?) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = ?) and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > ? * ? and last.eventtimestamp > current_timestamp - interval ? and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval ?) and last.eventtimestamp > current_timestamp - interval ? and broker.r = ?;-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2026-01-23 06:00:07 Duration: 0ms
2 22 167.53 MiB 7.60 MiB 7.65 MiB 7.62 MiB jr.resultuid as resultuid, jr.direction as direction, jr.patternendtime as identified, jr.patternlengthbars as length, jr.patternstarttime as patternstarttime, case when jr.trendchangeid = ? then ? else ? end as trendchange, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, jp.patternname as pattern_name, dtt.timezone as timezone, ? as age, cps.pip, g.basegroupname from japsticks_results jr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = jr.symbolid inner join relevance_japsticks_results rar on rar.resultuid = jr.resultuid inner join symbols s on jr.symbolid = s.symbolid and s.nonliquid = ? inner join japsticks_patterns jp on jr.patternid = jp.id inner join downloadersymbolsettings dss on jr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where jr.gmttimefound > now() - interval ? and s.deleted = ? and (jr.simulation = ? or jr.simulation is null) and (rar.relevant = ?) --and (semicolon_age = ? or rar.age <= semicolon_age) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or jp.patternname in (...)) and (? = ? or jr.patternlengthbars <= ?) ), results as ( select distinct on (symbolid) * from all_results order by symbolid, resultuid ) select * from results order by identified desc, length desc ;-
jr.resultuid AS resultuid, jr.direction AS direction, jr.patternendtime AS identified, jr.patternlengthbars AS length, jr.patternstarttime AS patternstarttime, case when jr.trendchangeid = 1 then 'Continuation' else 'Reversal' end AS trendchange, s.exchange AS exchange, s.symbolid AS symbolid, coalesce(bim.code, s.symbol) AS symbol_code, s.longname AS symbol_name, s.timegranularity AS interval, jp.patternname AS pattern_name, dtt.timezone AS timezone, 0 AS age, cps.pip, g.basegroupname FROM japsticks_results jr INNER JOIN brokersymbollist bsl ON bsl.brokerid = $1 AND bsl.symbolid = jr.symbolid INNER JOIN relevance_japsticks_results rar ON rar.resultuid = jr.resultuid INNER JOIN symbols s ON jr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN japsticks_patterns jp ON jr.patternid = jp.id INNER JOIN downloadersymbolsettings dss ON jr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN symbolgroup sg on s.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN brokergroups bg on g.groupid = bg.groupid AND bsl.brokerid = bg.brokerid LEFT JOIN currencypips cps on cps.symbol = s.symbol LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE jr.gmttimefound > now() - INTERVAL '7 DAYS' AND s.deleted = 0 AND (jr.simulation = 0 OR jr.simulation IS NULL) AND (rar.relevant = 1) --AND (semicolon_age = 0 OR rar.age <= semicolon_age) AND ($2 = 0 OR s.timegranularity in ($3)) AND ($4 = 0 OR s.exchange in ($5)) AND ($6 = 0 OR coalesce(bim.code, s.symbol) in ($7)) AND ($8 = 0 OR jp.patternname in ($9)) AND ($10 = 0 OR jr.patternlengthbars <= $11)), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2026-01-23 06:01:59 Duration: 0ms
3 17 53.16 MiB 3.12 MiB 3.14 MiB 3.13 MiB select resultuid from relevance_consecutivecandles_results order by resultuid desc limit ?), all_results as ( select ccr.resultuid as resultuid, ccr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, ccr.patternendtime as identified, dtt.timezone as timezone, ccr.qtyconsecutivecandles as length, g.basegroupname, case when rcr.age is not null then rcr.age when ccr.resultuid <= rm.resultuid then ? else ? end as age, case when rcr.relevant is not null then rcr.relevant when ccr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip, newlevels.filtered from consecutivecandles_results ccr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = ccr.symbolid inner join symbols s on ccr.symbolid = s.symbolid and s.nonliquid = ? inner join downloadersymbolsettings dss on ccr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join symbolgroup sg on ccr.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join rar_max rm on ? = ? left outer join relevance_consecutivecandles_results rcr on rcr.resultuid = ccr.resultuid left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? left join lateral calc_cc_signal_filter (ccr.resultuid) newlevels on true where ccr.gmttimefound > now() - interval ? and s.deleted = ? and (ccr.simulation = ? or ccr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or ccr.patternlengthbars <= ?)), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc;-
SELECT resultuid FROM relevance_consecutivecandles_results ORDER BY resultuid DESC LIMIT 1), all_results AS ( SELECT ccr.resultuid AS resultuid, ccr.direction AS direction, s.exchange AS exchange, s.symbolid AS symbolid, coalesce(bim.code, s.symbol) AS symbol_code, s.longname AS symbol_name, s.timegranularity AS interval, ccr.patternendtime AS identified, dtt.timezone AS timezone, ccr.qtyconsecutivecandles AS length, g.basegroupname, CASE WHEN rcr.age IS NOT NULL THEN rcr.age WHEN ccr.resultuid <= rm.resultuid THEN 1 ELSE 0 END as age, CASE WHEN rcr.relevant IS NOT NULL THEN rcr.relevant WHEN ccr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip, newLevels.filtered FROM consecutivecandles_results ccr INNER JOIN brokersymbollist bsl ON bsl.brokerid = $1 AND bsl.symbolid = ccr.symbolid INNER JOIN symbols s ON ccr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN downloadersymbolsettings dss ON ccr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN symbolgroup sg on ccr.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN brokergroups bg on g.groupid = bg.groupid AND bsl.brokerid = bg.brokerid INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN relevance_consecutivecandles_results rcr ON rcr.resultuid = ccr.resultuid LEFT JOIN currencypips cps on cps.symbol = s.symbol LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' LEFT JOIN LATERAL calc_cc_signal_filter (ccr.resultuid) newLevels on true WHERE ccr.gmttimefound > now() - INTERVAL '7 DAYS' AND s.deleted = 0 AND (ccr.simulation = 0 OR ccr.simulation IS NULL) AND ($2 = 0 OR s.timegranularity in ($3, $4, $5, $6, $7, $8, $9)) AND ($10 = 0 OR s.exchange in ($11)) AND ($12 = 0 OR coalesce(bim.code, s.symbol) in ($13, $14, $15, $16, $17, $18, $19, $20, $21, $22, $23, $24, $25, $26, $27, $28, $29, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $40, $41, $42, $43, $44, $45, $46, $47, $48, $49, $50, $51, $52, $53, $54, $55, $56, $57, $58, $59, $60, $61, $62, $63, $64, $65, $66, $67, $68, $69, $70, $71, $72, $73, $74, $75, $76, $77, $78, $79, $80, $81, $82, $83, $84, $85, $86, $87, $88, $89, $90, $91, $92, $93, $94, $95, $96, $97, $98, $99, $100, $101, $102, $103, $104, $105, $106, $107, $108, $109, $110, $111, $112, $113, $114, $115, $116, $117, $118, $119, $120, $121, $122, $123, $124, $125, $126, $127, $128, $129, $130, $131, $132, $133, $134, $135, $136, $137, $138, $139, $140, $141, $142, $143, $144, $145, $146, $147, $148, $149, $150, $151, $152, $153, $154, $155, $156, $157, $158, $159, $160, $161, $162, $163, $164, $165, $166, $167, $168, $169, $170, $171, $172, $173, $174, $175, $176, $177, $178, $179, $180, $181, $182, $183, $184, $185, $186, $187, $188, $189, $190, $191, $192, $193, $194, $195, $196, $197, $198, $199, $200, $201, $202, $203, $204, $205, $206, $207, $208, $209, $210, $211, $212, $213, $214, $215, $216, $217, $218, $219, $220, $221, $222, $223, $224, $225, $226, $227, $228, $229, $230, $231, $232, $233, $234, $235, $236, $237, $238, $239, $240, $241, $242, $243, $244, $245, $246, $247, $248, $249, $250, $251, $252, $253, $254, $255, $256, $257, $258, $259, $260, $261, $262, $263, $264, $265, $266, $267, $268, $269, $270, $271, $272, $273, $274, $275, $276, $277, $278, $279, $280, $281, $282, $283, $284, $285, $286, $287, $288, $289, $290, $291, $292, $293, $294, $295, $296, $297, $298, $299, $300, $301, $302, $303, $304, $305, $306, $307, $308, $309, $310, $311, $312, $313, $314, $315, $316, $317, $318, $319, $320, $321, $322)) AND ($323 = 0 OR ccr.patternlengthbars <= $324)), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = $325 OR relevant = 1) AND ($326 = 0 OR age <= $327) ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2026-01-23 06:02:59 Duration: 0ms
4 13 599.00 MiB 46.07 MiB 46.08 MiB 46.08 MiB update solr_relevance_old set new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total from ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total from whatshot_probability where type = ?) sub where result_uid = sub.resultuid;-
UPDATE solr_relevance_old SET new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total FROM ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total FROM whatshot_probability WHERE type = 'cp') sub WHERE result_uid = sub.resultuid;
Date: 2026-01-23 06:01:14 Duration: 0ms
5 13 1016.34 MiB 78.18 MiB 78.18 MiB 78.18 MiB with max_ra as ( select resultuid from relevance_keylevels_results order by resultuid desc limit ?) update solr_relevance_old set newrelevant = sub.relevant, newage = sub.age from ( select so.uuid, case when ra.relevant is not null then ra.relevant when so.result_uid < max_ra.resultuid then ? else ? end as relevant, case when ra.age is not null then ra.age when so.result_uid < max_ra.resultuid then ? else ? end as age, so.result_uid from max_ra, solr_relevance_old so inner join keylevels_results k on so.result_uid = k.resultuid and so.uuid ilike ? inner join downloadersymbolsettings dss on k.symbolid = dss.symbolid left outer join relevance_keylevels_results ra on so.result_uid = ra.resultuid and so.uuid ilike ?) sub where solr_relevance_old.result_uid = sub.result_uid and solr_relevance_old.uuid ilike ?; update solr_relevance_old set newrelevant = ? where result_uid in ( select result_uid from solr_relevance_old s left outer join keylevels_results a on a.resultuid = s.result_uid where s.uuid ilike ? and a.resultuid is null); update solr_relevance_old set new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total from ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total from whatshot_probability where type in (...)) sub where result_uid = sub.resultuid;-
with max_ra as ( select resultuid from relevance_keylevels_results order by resultuid desc limit 1) update solr_relevance_old set newrelevant = sub.relevant, newage = sub.age from ( select so.uuid, case when ra.relevant is not null then ra.relevant when so.result_uid < max_ra.resultuid then 0 else 1 end as relevant, case when ra.age is not null then ra.age when so.result_uid < max_ra.resultuid then 11 else 0 end as age, so.result_uid from max_ra, solr_relevance_old so inner join keylevels_results k on so.result_uid = k.resultuid and so.uuid ilike 'kl_%' inner join downloadersymbolsettings dss on k.symbolid = dss.symbolid left outer join relevance_keylevels_results ra on so.result_uid = ra.resultuid and so.uuid ilike 'kl_%') sub where solr_relevance_old.result_uid = sub.result_uid and solr_relevance_old.uuid ilike 'kl_%'; update solr_relevance_old set newrelevant = 0 where result_uid in ( select result_uid from solr_relevance_old s left outer join keylevels_results a on a.resultuid = s.result_uid where s.uuid ilike 'kl_%' and a.resultuid is null); UPDATE solr_relevance_old SET new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total FROM ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total FROM whatshot_probability WHERE type in ('kl', 'ekl')) sub WHERE result_uid = sub.resultuid;
Date: 2026-01-23 06:01:18 Duration: 0ms
6 8 1.04 GiB 132.65 MiB 132.70 MiB 132.67 MiB select updateresultsmaterializedview ();-
select updateresultsmaterializedview ();
Date: 2026-01-23 06:02:20 Duration: 0ms
7 4 372.60 MiB 93.11 MiB 93.21 MiB 93.15 MiB select updateageforrelevantresults ();-
select updateageforrelevantresults ();
Date: 2026-01-23 06:02:05 Duration: 0ms
Queries generating the largest temporary files
Rank Size Query 1 183.22 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2026-01-23 06:20:08 ]
2 165.16 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2026-01-23 06:50:08 ]
3 151.09 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2026-01-23 06:30:07 ]
4 132.70 MiB select updateresultsmaterializedview ();[ Date: 2026-01-23 06:02:20 ]
5 132.67 MiB select updateresultsmaterializedview ();[ Date: 2026-01-23 06:47:29 ]
6 132.67 MiB select updateresultsmaterializedview ();[ Date: 2026-01-23 06:32:28 ]
7 132.67 MiB select updateresultsmaterializedview ();[ Date: 2026-01-23 06:17:35 ]
8 132.67 MiB select updateresultsmaterializedview ();[ Date: 2026-01-23 06:05:33 ]
9 132.66 MiB select updateresultsmaterializedview ();[ Date: 2026-01-23 06:50:36 ]
10 132.65 MiB select updateresultsmaterializedview ();[ Date: 2026-01-23 06:20:39 ]
11 132.65 MiB select updateresultsmaterializedview ();[ Date: 2026-01-23 06:35:40 ]
12 100.16 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2026-01-23 06:30:08 ]
13 93.21 MiB select updateageforrelevantresults ();[ Date: 2026-01-23 06:02:05 ]
14 93.16 MiB select updateageforrelevantresults ();[ Date: 2026-01-23 06:32:15 ]
15 93.11 MiB select updateageforrelevantresults ();[ Date: 2026-01-23 06:47:16 ]
16 93.11 MiB select updateageforrelevantresults ();[ Date: 2026-01-23 06:17:18 ]
17 86.20 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2026-01-23 06:00:04 ]
18 85.01 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2026-01-23 06:40:25 ]
19 83.27 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2026-01-23 06:40:24 ]
20 78.18 MiB with max_ra as ( select resultuid from relevance_keylevels_results order by resultuid desc limit 1) update solr_relevance_old set newrelevant = sub.relevant, newage = sub.age from ( select so.uuid, case when ra.relevant is not null then ra.relevant when so.result_uid < max_ra.resultuid then 0 else 1 end as relevant, case when ra.age is not null then ra.age when so.result_uid < max_ra.resultuid then 11 else 0 end as age, so.result_uid from max_ra, solr_relevance_old so inner join keylevels_results k on so.result_uid = k.resultuid and so.uuid ilike 'kl_%' inner join downloadersymbolsettings dss on k.symbolid = dss.symbolid left outer join relevance_keylevels_results ra on so.result_uid = ra.resultuid and so.uuid ilike 'kl_%') sub where solr_relevance_old.result_uid = sub.result_uid and solr_relevance_old.uuid ilike 'kl_%'; update solr_relevance_old set newrelevant = 0 where result_uid in ( select result_uid from solr_relevance_old s left outer join keylevels_results a on a.resultuid = s.result_uid where s.uuid ilike 'kl_%' and a.resultuid is null); UPDATE solr_relevance_old SET new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total FROM ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total FROM whatshot_probability WHERE type in ('kl', 'ekl')) sub WHERE result_uid = sub.resultuid;[ Date: 2026-01-23 06:01:18 ]
-
Vacuums
Vacuums / Analyzes Distribution
Key values
- 0 sec Highest CPU-cost vacuum
Table
Database - Date
- 0 sec Highest CPU-cost analyze
Table
Database - Date
Analyzes per table
Key values
- public.solr_relevance_old (13) Main table analyzed (database acaweb_fx)
- 50 analyzes Total
Table Number of analyzes acaweb_fx.public.solr_relevance_old 13 acaweb_fx.pg_catalog.pg_attribute 5 acaweb_fx.public.datafeeds_latestrun 4 acaweb_fx.pg_catalog.pg_class 4 acaweb_fx.public.relevance_fibonacci_results 4 acaweb_fx.public.relevance_autochartist_results 4 acaweb_fx.public.relevance_keylevels_results 3 acaweb_fx.pg_catalog.pg_type 3 acaweb_fx.pg_catalog.pg_index 2 acaweb_fx.public.latest_t15_candle_view 2 acaweb_fx.public.autochartist_symbolupdates 1 acaweb_fx.public.solr_imports 1 acaweb_fx.pg_catalog.pg_depend 1 acaweb_fx.public.latest_candle_datetime_per_receng 1 acaweb_fx.public.relevance_consecutivecandles_results 1 acaweb_fx.public.symbollatestupdatetime 1 Total 50 Vacuums per table
Key values
- public.solr_relevance_old (13) Main table vacuumed on database acaweb_fx
- 35 vacuums Total
Index Buffer usage Skipped WAL usage Table Vacuums scans hits misses dirtied pins frozen records full page bytes acaweb_fx.public.solr_relevance_old 13 13 9,713 0 53 0 0 7,531 782 3,764,480 acaweb_fx.public.datafeeds_latestrun 5 0 602 0 22 0 0 49 12 56,485 acaweb_fx.pg_toast.pg_toast_2619 2 2 268 0 56 0 0 208 52 189,926 acaweb_fx.pg_catalog.pg_attribute 2 2 1,445 0 304 0 134 700 258 1,568,466 acaweb_fx.public.latest_t15_candle_view 2 2 159 0 8 0 0 12 2 17,197 acaweb_fx.public.relevance_keylevels_results 2 2 7,211 0 629 4 222 1,510 613 1,715,248 acaweb_fx.pg_catalog.pg_class 2 2 897 0 103 0 0 291 98 502,258 acaweb_fx.public.relevance_autochartist_results 2 2 6,861 0 141 2 492 1,364 128 410,256 acaweb_fx.public.relevance_fibonacci_results 2 2 2,500 0 58 2 112 399 35 129,178 acaweb_fx.pg_catalog.pg_type 1 1 134 0 17 0 0 50 16 107,809 acaweb_fx.public.autochartist_symbolupdates 1 1 24,728 0 270 6 38,306 6,486 253 511,451 acaweb_fx.pg_catalog.pg_statistic 1 1 960 0 211 0 582 556 195 746,833 Total 35 30 55,478 44,718 1,872 14 39,848 19,156 2,444 9,719,587 Tuples removed per table
Key values
- public.solr_relevance_old (68151) Main table with removed tuples on database acaweb_fx
- 80948 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain acaweb_fx.public.solr_relevance_old 13 13 68,151 67,508 0 0 2,340 acaweb_fx.public.autochartist_symbolupdates 1 1 5,450 47,941 40 0 40,691 acaweb_fx.pg_catalog.pg_attribute 2 2 2,319 22,805 1,245 0 524 acaweb_fx.public.relevance_autochartist_results 2 2 2,171 16,557 0 0 760 acaweb_fx.pg_catalog.pg_statistic 1 1 705 3,709 0 0 1,194 acaweb_fx.public.relevance_keylevels_results 2 2 592 23,850 677 0 558 acaweb_fx.public.relevance_fibonacci_results 2 2 496 2,934 0 0 204 acaweb_fx.pg_catalog.pg_class 2 2 468 3,443 145 0 300 acaweb_fx.public.datafeeds_latestrun 5 0 198 170 100 0 80 acaweb_fx.pg_toast.pg_toast_2619 2 2 163 356 16 3 105 acaweb_fx.pg_catalog.pg_type 1 1 132 1,449 3 0 39 acaweb_fx.public.latest_t15_candle_view 2 2 103 39 11 0 2 Total 35 30 80,948 190,761 2,237 3 46,797 Pages removed per table
Key values
- pg_toast.pg_toast_2619 (3) Main table with removed pages on database acaweb_fx
- 3 pages Total removed
Table Number of vacuums Index scans Tuples removed Pages removed acaweb_fx.pg_toast.pg_toast_2619 2 2 163 3 acaweb_fx.pg_catalog.pg_type 1 1 132 0 acaweb_fx.public.datafeeds_latestrun 5 0 198 0 acaweb_fx.public.autochartist_symbolupdates 1 1 5450 0 acaweb_fx.pg_catalog.pg_statistic 1 1 705 0 acaweb_fx.pg_catalog.pg_attribute 2 2 2319 0 acaweb_fx.public.latest_t15_candle_view 2 2 103 0 acaweb_fx.public.relevance_keylevels_results 2 2 592 0 acaweb_fx.pg_catalog.pg_class 2 2 468 0 acaweb_fx.public.solr_relevance_old 13 13 68151 0 acaweb_fx.public.relevance_autochartist_results 2 2 2171 0 acaweb_fx.public.relevance_fibonacci_results 2 2 496 0 Total 35 30 80,948 3 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Jan 23 06 35 50 - 0 sec Highest CPU-cost vacuum
-
Locks
Locks by types
Key values
- AccessExclusiveLock Main Lock Type
- 3 locks Total
Most frequent waiting queries (N)
Rank Count Total time Min time Max time Avg duration Query 1 1 14m34s 14m34s 14m34s 14m34s truncate table solr_relevance_old;-
TRUNCATE TABLE solr_relevance_old;
Date: 2026-01-23 06:19:46
2 1 2m44s 2m44s 2m44s 2m44s refresh materialized view latest_candle_datetime_per_receng;-
refresh materialized view latest_candle_datetime_per_receng;
Date: 2026-01-23 06:19:46
3 1 2m21s 2m21s 2m21s 2m21s select recognitionengine, to_char(datetimeupdate, ?) from latest_candle_datetime_per_receng;-
select recognitionengine, to_char(datetimeupdate, 'yyyy-mm-dd HH24:MI') from latest_candle_datetime_per_receng;
Date: 2026-01-23 06:19:47
Queries that waited the most
Rank Wait time Query 1 14m34s TRUNCATE TABLE solr_relevance_old;[ Date: 2026-01-23 06:19:46 ]
2 2m44s refresh materialized view latest_candle_datetime_per_receng;[ Date: 2026-01-23 06:19:46 ]
3 2m21s select recognitionengine, to_char(datetimeupdate, 'yyyy-mm-dd HH24:MI') from latest_candle_datetime_per_receng;[ Date: 2026-01-23 06:19:47 ]
-
Queries
Queries by type
Key values
- 59,235 Total read queries
- 36,793 Total write queries
Queries by database
Key values
- unknown Main database
- 205,476 Requests
- 3h30m1s (unknown)
- Main time consuming database
Database Request type Count Duration acaweb_fx Total 878 0ms copy from 65 0ms copy to 26 0ms cte 85 0ms ddl 13 0ms delete 13 0ms others 203 0ms select 103 0ms tcl 331 0ms update 39 0ms acaweb_fx_integer Total 1 0ms select 1 0ms postgres Total 3 0ms select 3 0ms socialmedia Total 91 0ms select 91 0ms translations Total 1 0ms select 1 0ms unknown Total 205,476 3h30m1s copy from 13 0ms copy to 575 0ms cte 5,814 0ms insert 27,784 0ms others 7,011 0ms select 59,036 0ms tcl 336 0ms update 1,699 0ms Queries by user
Key values
- unknown Main user
- 205,476 Requests
User Request type Count Duration postgres Total 974 0ms copy from 65 0ms copy to 26 0ms cte 85 0ms ddl 13 0ms delete 13 0ms others 203 0ms select 199 0ms tcl 331 0ms update 39 0ms unknown Total 205,476 3h30m1s copy from 13 0ms copy to 575 0ms cte 5,814 0ms insert 27,784 0ms others 7,011 0ms select 59,036 0ms tcl 336 0ms update 1,699 0ms Duration by user
Key values
- 3h30m1s (unknown) Main time consuming user
User Request type Count Duration postgres Total 974 0ms copy from 65 0ms copy to 26 0ms cte 85 0ms ddl 13 0ms delete 13 0ms others 203 0ms select 199 0ms tcl 331 0ms update 39 0ms unknown Total 205,476 3h30m1s copy from 13 0ms copy to 575 0ms cte 5,814 0ms insert 27,784 0ms others 7,011 0ms select 59,036 0ms tcl 336 0ms update 1,699 0ms Queries by host
Key values
- unknown Main host
- 206,450 Requests
- 3h30m1s (unknown)
- Main time consuming host
Queries by application
Key values
- unknown Main application
- 206,096 Requests
- 3h30m1s (unknown)
- Main time consuming application
Application Request type Count Duration pg_dump Total 5 0ms select 5 0ms psql Total 349 0ms copy from 65 0ms copy to 26 0ms cte 85 0ms ddl 13 0ms delete 13 0ms others 4 0ms select 104 0ms update 39 0ms unknown Total 206,096 3h30m1s copy from 13 0ms copy to 575 0ms cte 5,814 0ms insert 27,784 0ms others 7,210 0ms select 59,126 0ms tcl 667 0ms update 1,699 0ms Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2026-01-23 06:55:59 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 63,346 0-1ms duration
Slowest individual queries
Rank Duration Query NO DATASET
Time consuming queries
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 0ms 1 0ms 0ms 0ms lock table public.stats_hrs_summary_by_groups in access share mode;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 2 0ms 1 0ms 0ms 0ms insert into t30 (symbolid, pricedatetime, open, high, low, close, volume, bsf, sastdatetimereceived) values (?, ?::timestamp without time zone, ?.?, ?.?, ?.?, ?, ?, ?, ?::timestamp without time zone) on conflict (symbolid, pricedatetime) do nothing;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 3 0ms 2 0ms 0ms 0ms lock table public.timezones_korean in access share mode;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 4 0ms 30 0ms 0ms 0ms select key, value from datasources ds inner join datasourceparams dsp on ds.id = dsp.datasourceid where ds.name = ?;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jan 23 06 30 0ms 0ms 5 0ms 2 0ms 0ms 0ms copy public.t30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived, pricesadjusted, relevanceprocessed, recengprocessedadjusted, historical) to stdout;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 6 0ms 1 0ms 0ms 0ms copy public.processresults (id, processid, resultdate, shorttext, longtext, title, test) to stdout;Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 7 0ms 2,138 0ms 0ms 0ms insert into t60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Jan 23 06 2,138 0ms 0ms 8 0ms 975 0ms 0ms 0ms select oid, tableoid, pol.polname, pol.polcmd, pol.polpermissive, case when pol.polroles = ? then null else pg_catalog.array_to_string(array ( select pg_catalog.quote_ident(rolname) from pg_catalog.pg_roles where oid = any (pol.polroles)), ?) end as polroles, pg_catalog.pg_get_expr(pol.polqual, pol.polrelid) as polqual, pg_catalog.pg_get_expr(pol.polwithcheck, pol.polrelid) as polwithcheck from pg_catalog.pg_policy pol where polrelid = ?;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Jan 23 06 975 0ms 0ms 9 0ms 2 0ms 0ms 0ms copy public.timezones_greek (timezoneid, timezone) to stdout;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 10 0ms 2 0ms 0ms 0ms lock table public.futures_symbols in access share mode;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 11 0ms 2 0ms 0ms 0ms copy archive.autochartist_results (resultid, bandwidth, pattern, gmttimefound, direction, initialtrend, breakout, volumeincrease, noise, symmetry, patternstarttime, patternendtime, patternstartprice, patternendprice, resx0, resx1, supportx0, supportx1, resy0, resy1, supporty0, supporty1, supportgradient, resgradient, riskreward, qtytp, predictionpricefrom, predictionpriceto, predictiontimefrom, predictiontimeto, patternquality, trendchange, maxmovementafterbreakout, latestbaratbreakouttime, latestbaratbreakoutprice, patternlengthbars, temporarypattern, symbolid, resultuid, relevancestartdistance, simulation, writtendatetime, old_resultuid) to stdout;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 12 0ms 2 0ms 0ms 0ms copy public.satelliteauthentication (id, satelliteserverid, brokerid, authenticationstatus, maketradeurl, notifications, validusername, validpassword, enabled) to stdout;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 13 0ms 18 0ms 0ms 0ms select cast(count(*) / cast(setting as numeric) * ? as int) from pg_stat_activity, pg_settings where name = ? group by setting;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Jan 23 06 18 0ms 0ms 14 0ms 5 0ms 0ms 0ms select s.tableoid, s.oid, s.subname, ( select rolname from pg_catalog.pg_roles where oid = s.subowner) as rolname, s.subconninfo, s.subslotname, s.subsynccommit, s.subpublications from pg_subscription s where s.subdbid = ( select oid from pg_database where datname = current_database());Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jan 23 06 5 0ms 0ms 15 0ms 1 0ms 0ms 0ms select usename, array_to_string(array ( select quote_ident(option_name) || ? || quote_literal(option_value) from pg_options_to_table(umoptions) order by option_name), e ?) as umoptions from pg_user_mappings where srvid = ? order by usename;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 16 0ms 2 0ms 0ms 0ms copy archive.sa_hist_consecutivecandles (id, symbolid, datetime, image, qty, percentile, direction, lastupdated, height) to stdout;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 17 0ms 1 0ms 0ms 0ms copy public.commoncontenttypeparams (id, name, required, description, "default", type) to stdout;Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 18 0ms 471 0ms 0ms 0ms with rar_max as ( select resultuid from relevance_keylevels_results order by resultuid desc limit ? ), kr as ( select a.*, rr.age, rr.relevant from keylevels_results a left outer join relevance_keylevels_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_keylevels_results) end ), all_results as ( select kr.resultuid as resultuid, kr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, p.patternname as pattern_name, kr.breakout as breakout, kr.atbaridentified as identified, dtt.timezone as timezone, kr.patternlengthbars as length, g.basegroupname, newlevels.filtered, case when kr.age is not null then kr.age when kr.resultuid <= rm.resultuid then ? else ? end as age, case when kr.relevant is not null then kr.relevant when kr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from kr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = kr.symbolid inner join symbols s on bsl.symbolid = s.symbolid and s.nonliquid = ? inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join hrspatterns p on kr.patternid = p.patternid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left outer join autochartist_symbolupdates au on dss.symbolid = au.symbolid left outer join relevance_keylevels_results rar on rar.resultuid = kr.resultuid left join lateral calc_kl_signal_filter (kr.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where kr.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (kr.simulation = ? or kr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or p.patternname in (...)) and (? = ? or kr.patternclassid in (...)) and (? = ? or kr.patternlengthbars <= ?) and kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, ?::timestamp without time zone) -- to make sure patternstarttime is in our t-tables ), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc limit ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Jan 23 06 471 0ms 0ms 19 0ms 2 0ms 0ms 0ms lock table public.powerstats in access share mode;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 20 0ms 4 0ms 0ms 0ms select oid, enumlabel from pg_catalog.pg_enum where enumtypid = ? order by enumsortorder;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Jan 23 06 4 0ms 0ms Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 21,141 0ms 0ms 0ms 0ms select ?;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Jan 23 06 21,141 0ms 0ms 2 13,467 0ms 0ms 0ms 0ms select distinct on (coalesce(bim.code, s.symbol) , s.exchange, s.timegranularity, df.timezone) s.symbolid as id, coalesce(bim.code, s.symbol) as name, s.symbol as symbol, dss.downloadersymbol as ticker, s.exchange as exchange, s.timegranularity as interval, df.timezone as timezone from symbols s inner join downloadersymbolsettings dss on dss.symbolid = s.symbolid inner join datafeedstimetable df on df.classname ilike dss.classname left join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = s.symbolid left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = ? and bim.type = ? where s.symbolid = ?;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Jan 23 06 13,467 0ms 0ms 3 7,732 0ms 0ms 0ms 0ms insert into executionlogs (executionid, status, message, details, detailtype) values (null, ?, ?, null, null);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Jan 23 06 7,732 0ms 0ms 4 5,657 0ms 0ms 0ms 0ms insert into t15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jan 23 06 5,657 0ms 0ms 5 5,283 0ms 0ms 0ms 0ms select s.symbolid as id, s.symbol as name, s.exchange as exchange, s.timegranularity as interval, dtt.timezone as timezone from symbols s inner join downloadersymbolsettings dss on dss.symbolid = s.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join brokersymbollist bsl on bsl.symbolid = s.symbolid where bsl.brokerid = ? and (? = ? or s.timegranularity = ?) and (s.symbol = ? or dss.downloadersymbol = ?) and dss.enabled = ?;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Jan 23 06 5,283 0ms 0ms 6 4,305 0ms 0ms 0ms 0ms insert into autochartist_results (resultid, symbolid, bandwidth, pattern, qtytp, gmttimefound, direction, initialtrend, breakout, volumeincrease, noise, symmetry, predictionpricefrom, predictionpriceto, predictiontimefrom, predictiontimeto, patternstarttime, patternendtime, patternstartprice, patternendprice, resx0, resx1, supportx0, supportx1, resy0, resy1, supporty0, supporty1, supportgradient, resgradient, riskreward, patternquality, trendchange, maxmovementafterbreakout, latestbaratbreakouttime, latestbaratbreakoutprice, patternlengthbars, temporarypattern, relevancestartdistance, simulation, writtendatetime) values (?, ?, ?.?, ?, ?, ?::timestamp without time zone, ?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?::timestamp without time zone, ?::timestamp without time zone, ?::timestamp without time zone, ?::timestamp without time zone, ?.?, ?.?, ?::timestamp without time zone, ?::timestamp without time zone, ?::timestamp without time zone, ?::timestamp without time zone, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?, ?.?, ?::timestamp without time zone, ?.?, ?, ?, ?.?, ?, current_timestamp::timestamp without time zone) on conflict do nothing;Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jan 23 06 4,305 0ms 0ms 7 3,248 0ms 0ms 0ms 0ms insert into t30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Jan 23 06 3,248 0ms 0ms 8 2,982 0ms 0ms 0ms 0ms set extra_float_digits = ?;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Jan 23 06 2,982 0ms 0ms 9 2,956 0ms 0ms 0ms 0ms set application_name = ?;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jan 23 06 2,956 0ms 0ms 10 2,254 0ms 0ms 0ms 0ms insert into fibonacci_results (bandwidth, pattern, gmttimefound, direction, patternstarttime, patternendtime, patternstartprice, patternendprice, qtytp, pricex, timex, pricea, timea, priceb, timeb, pricec, timec, priced, timed, averagequality, timequality, errormargin, patternlengthbars, target10, target06, target16, target07, target12, target05, target03, symbolid, noise, ratiosfound, temporarypattern, uniqueindex, completed, simulation, writtendatetime) values (?.?, ?, ?::timestamp without time zone, ?, ?::timestamp without time zone, ?::timestamp without time zone, ?.?, ?.?, ?, ?.?, ?::timestamp without time zone, ?.?, ?::timestamp without time zone, ?.?, ?::timestamp without time zone, ?.?, ?::timestamp without time zone, ?.?, ?::timestamp without time zone, ?.?, ?.?, ?.?, ?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?, ?.?, ?, ?, ?, ?, ?, current_timestamp::timestamp without time zone) on conflict do nothing;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jan 23 06 2,254 0ms 0ms 11 2,138 0ms 0ms 0ms 0ms insert into t60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jan 23 06 2,138 0ms 0ms 12 1,872 0ms 0ms 0ms 0ms with rar_max as ( select resultuid from relevance_autochartist_results order by resultuid desc limit ? ) select a.symbolid, pattern, patternid, resy0, resy1, resx0, resx1, supporty0, supporty1, supportx0, supportx1, predictiontimeto, patternstarttime, timegranularity, patternendtime, direction, trendchange, patternlengthbars, patternquality, case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as uid, breakout, initialtrend, volumeincrease, symmetry as uniformity, predictionpricefrom, predictionpriceto, noise, s.exchange, s.symbol, s.longname, s.shortname, breakout, dtt.timezone, patternstartprice, patternendprice, qtytp, newlevels.profit, newlevels.stop, newlevels.filtered, case when rar.age is not null then rar.age when a.resultuid <= rm.resultuid then ? else ? end as age, case when rar.relevant is not null then rar.relevant when a.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from autochartist_results a inner join downloadersymbolsettings dss on a.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on a.symbolid = s.symbolid inner join patterns p on p.patternname = a.pattern inner join rar_max rm on ? = ? left outer join relevance_autochartist_results rar on rar.resultuid = a.resultuid left join lateral calc_cp_signal (a.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jan 23 06 1,872 0ms 0ms 13 1,656 0ms 0ms 0ms 0ms select pg_catalog.format_type(?::pg_catalog.oid, null);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Jan 23 06 1,656 0ms 0ms 14 1,162 0ms 0ms 0ms 0ms update patternresultsrelevance set relevant = ?, saxo_relevant = ?, notrelevantpricedatetime = ?, reason = ? where uniqueindex = ? and relevant = ?;Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jan 23 06 1,162 0ms 0ms 15 1,049 0ms 0ms 0ms 0ms select symbolid, pricedatetime, classname, downloadfrequency, downloadersymbol, open, high, low, close, volume, bsf, sastdatetimereceived from ( select pricedatetime, dss.classname, dss.downloadfrequency, dss.symbolid, dss.downloadersymbol, t.open, t.high, t.low, t.close, t.volume, t.bsf, t.sastdatetimereceived, row_number() over (partition by t.symbolid order by t.pricedatetime desc) as rn from t15 t, downloadersymbolsettings dss, symbols s where dss.classname = ? and dss.downloadfrequency = ? and dss.symbolid = t.symbolid and s.symbolid = dss.symbolid and dss.enabled = ? and s.deleted = ? and dss.downloadersymbol in (...) and t.pricedatetime > now() - interval ?) as ranked_candles_table where rn = ?;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Jan 23 06 1,049 0ms 0ms 16 975 0ms 0ms 0ms 0ms select oid, tableoid, pol.polname, pol.polcmd, pol.polpermissive, case when pol.polroles = ? then null else pg_catalog.array_to_string(array ( select pg_catalog.quote_ident(rolname) from pg_catalog.pg_roles where oid = any (pol.polroles)), ?) end as polroles, pg_catalog.pg_get_expr(pol.polqual, pol.polrelid) as polqual, pg_catalog.pg_get_expr(pol.polwithcheck, pol.polrelid) as polwithcheck from pg_catalog.pg_policy pol where polrelid = ?;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Jan 23 06 975 0ms 0ms 17 970 0ms 0ms 0ms 0ms insert into keylevels_results (bandwidth, breakout, patternid, gmttimefound, approachingtimestamp, approachingregion, qtytp, patternlengthbars, patternprice, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, breakoutbars, breakoutprice, patternendtime, atbaridentified, atpriceidentified, errormargin, direction, symbolid, predictionpricefrom, predictionpriceto, predictiontimefrom, predictiontimebars, uniquepointsvalue, furthestprice, relevancestartdistance, patternclassid, patternstarttime, stoplosslevel, simulation, writtendatetime) values (?.?, ?, ?, ?::timestamp without time zone, ?, ?.?, ?, ?, ?.?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?.?, ?::timestamp without time zone, ?, ?.?, ?.?, ?, ?, ?.?, ?.?, ?::timestamp without time zone, ?, ?, ?.?, ?.?, ?, ?, ?.?, ?, current_timestamp::timestamp without time zone) on conflict do nothing;Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Jan 23 06 970 0ms 0ms 18 785 0ms 0ms 0ms 0ms select a.attnum, a.attname, a.atttypmod, a.attstattarget, a.attstorage, t.typstorage, a.attnotnull, a.atthasdef, a.attisdropped, a.attlen, a.attalign, a.attislocal, pg_catalog.format_type(t.oid, a.atttypmod) as atttypname, a.attgenerated, case when a.atthasmissing and not a.attisdropped then a.attmissingval else null end as attmissingval, a.attidentity, pg_catalog.array_to_string(array ( select pg_catalog.quote_ident(option_name) || ? || pg_catalog.quote_literal(option_value) from pg_catalog.pg_options_to_table(attfdwoptions) order by option_name), e ?) as attfdwoptions, case when a.attcollation <> t.typcollation then a.attcollation else ? end as attcollation, array_to_string(a.attoptions, ?) as attoptions from pg_catalog.pg_attribute a left join pg_catalog.pg_type t on a.atttypid = t.oid where a.attrelid = ?::pg_catalog.oid and a.attnum > ?::pg_catalog.int2 order by a.attnum;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Jan 23 06 785 0ms 0ms 19 679 0ms 0ms 0ms 0ms select at.attname, ( select pg_catalog.array_agg(acl order by row_n) from ( select acl, row_n from pg_catalog.unnest(coalesce(at.attacl, pg_catalog.acldefault(?, c.relowner))) with ordinality as perm (acl, row_n) where not exists ( select ? from pg_catalog.unnest(coalesce(pip.initprivs, pg_catalog.acldefault(?, c.relowner))) as init (init_acl) where acl = init_acl)) as foo) as attacl, ( select pg_catalog.array_agg(acl order by row_n) from ( select acl, row_n from pg_catalog.unnest(coalesce(pip.initprivs, pg_catalog.acldefault(?, c.relowner))) with ordinality as initp (acl, row_n) where not exists ( select ? from pg_catalog.unnest(coalesce(at.attacl, pg_catalog.acldefault(?, c.relowner))) as permp (orig_acl) where acl = orig_acl)) as foo) as rattacl, null as initattacl, null as initrattacl from pg_catalog.pg_attribute at join pg_catalog.pg_class c on (at.attrelid = c.oid) left join pg_catalog.pg_init_privs pip on (at.attrelid = pip.objoid and pip.classoid = ?::pg_catalog.regclass and at.attnum = pip.objsubid) where at.attrelid = ?::pg_catalog.oid and not at.attisdropped and (( select pg_catalog.array_agg(acl order by row_n) from ( select acl, row_n from pg_catalog.unnest(coalesce(at.attacl, pg_catalog.acldefault(?, c.relowner))) with ordinality as perm (acl, row_n) where not exists ( select ? from pg_catalog.unnest(coalesce(pip.initprivs, pg_catalog.acldefault(?, c.relowner))) as init (init_acl) where acl = init_acl)) as foo) is not null or ( select pg_catalog.array_agg(acl order by row_n) from ( select acl, row_n from pg_catalog.unnest(coalesce(pip.initprivs, pg_catalog.acldefault(?, c.relowner))) with ordinality as initp (acl, row_n) where not exists ( select ? from pg_catalog.unnest(coalesce(at.attacl, pg_catalog.acldefault(?, c.relowner))) as permp (orig_acl) where acl = orig_acl)) as foo) is not null or null is not null or null is not null) order by at.attnum;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Jan 23 06 679 0ms 0ms 20 669 0ms 0ms 0ms 0ms select downloadersymbol, spike_threshold from price_datafeed_spike_threshold where classname = ?;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Jan 23 06 669 0ms 0ms Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 0ms 0ms 0ms 1 0ms lock table public.stats_hrs_summary_by_groups in access share mode;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 2 0ms 0ms 0ms 1 0ms insert into t30 (symbolid, pricedatetime, open, high, low, close, volume, bsf, sastdatetimereceived) values (?, ?::timestamp without time zone, ?.?, ?.?, ?.?, ?, ?, ?, ?::timestamp without time zone) on conflict (symbolid, pricedatetime) do nothing;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 3 0ms 0ms 0ms 2 0ms lock table public.timezones_korean in access share mode;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 4 0ms 0ms 0ms 30 0ms select key, value from datasources ds inner join datasourceparams dsp on ds.id = dsp.datasourceid where ds.name = ?;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jan 23 06 30 0ms 0ms 5 0ms 0ms 0ms 2 0ms copy public.t30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived, pricesadjusted, relevanceprocessed, recengprocessedadjusted, historical) to stdout;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 6 0ms 0ms 0ms 1 0ms copy public.processresults (id, processid, resultdate, shorttext, longtext, title, test) to stdout;Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 7 0ms 0ms 0ms 2,138 0ms insert into t60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Jan 23 06 2,138 0ms 0ms 8 0ms 0ms 0ms 975 0ms select oid, tableoid, pol.polname, pol.polcmd, pol.polpermissive, case when pol.polroles = ? then null else pg_catalog.array_to_string(array ( select pg_catalog.quote_ident(rolname) from pg_catalog.pg_roles where oid = any (pol.polroles)), ?) end as polroles, pg_catalog.pg_get_expr(pol.polqual, pol.polrelid) as polqual, pg_catalog.pg_get_expr(pol.polwithcheck, pol.polrelid) as polwithcheck from pg_catalog.pg_policy pol where polrelid = ?;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Jan 23 06 975 0ms 0ms 9 0ms 0ms 0ms 2 0ms copy public.timezones_greek (timezoneid, timezone) to stdout;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 10 0ms 0ms 0ms 2 0ms lock table public.futures_symbols in access share mode;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 11 0ms 0ms 0ms 2 0ms copy archive.autochartist_results (resultid, bandwidth, pattern, gmttimefound, direction, initialtrend, breakout, volumeincrease, noise, symmetry, patternstarttime, patternendtime, patternstartprice, patternendprice, resx0, resx1, supportx0, supportx1, resy0, resy1, supporty0, supporty1, supportgradient, resgradient, riskreward, qtytp, predictionpricefrom, predictionpriceto, predictiontimefrom, predictiontimeto, patternquality, trendchange, maxmovementafterbreakout, latestbaratbreakouttime, latestbaratbreakoutprice, patternlengthbars, temporarypattern, symbolid, resultuid, relevancestartdistance, simulation, writtendatetime, old_resultuid) to stdout;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 12 0ms 0ms 0ms 2 0ms copy public.satelliteauthentication (id, satelliteserverid, brokerid, authenticationstatus, maketradeurl, notifications, validusername, validpassword, enabled) to stdout;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 13 0ms 0ms 0ms 18 0ms select cast(count(*) / cast(setting as numeric) * ? as int) from pg_stat_activity, pg_settings where name = ? group by setting;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Jan 23 06 18 0ms 0ms 14 0ms 0ms 0ms 5 0ms select s.tableoid, s.oid, s.subname, ( select rolname from pg_catalog.pg_roles where oid = s.subowner) as rolname, s.subconninfo, s.subslotname, s.subsynccommit, s.subpublications from pg_subscription s where s.subdbid = ( select oid from pg_database where datname = current_database());Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jan 23 06 5 0ms 0ms 15 0ms 0ms 0ms 1 0ms select usename, array_to_string(array ( select quote_ident(option_name) || ? || quote_literal(option_value) from pg_options_to_table(umoptions) order by option_name), e ?) as umoptions from pg_user_mappings where srvid = ? order by usename;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 16 0ms 0ms 0ms 2 0ms copy archive.sa_hist_consecutivecandles (id, symbolid, datetime, image, qty, percentile, direction, lastupdated, height) to stdout;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 17 0ms 0ms 0ms 1 0ms copy public.commoncontenttypeparams (id, name, required, description, "default", type) to stdout;Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Jan 23 06 1 0ms 0ms 18 0ms 0ms 0ms 471 0ms with rar_max as ( select resultuid from relevance_keylevels_results order by resultuid desc limit ? ), kr as ( select a.*, rr.age, rr.relevant from keylevels_results a left outer join relevance_keylevels_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_keylevels_results) end ), all_results as ( select kr.resultuid as resultuid, kr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, p.patternname as pattern_name, kr.breakout as breakout, kr.atbaridentified as identified, dtt.timezone as timezone, kr.patternlengthbars as length, g.basegroupname, newlevels.filtered, case when kr.age is not null then kr.age when kr.resultuid <= rm.resultuid then ? else ? end as age, case when kr.relevant is not null then kr.relevant when kr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from kr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = kr.symbolid inner join symbols s on bsl.symbolid = s.symbolid and s.nonliquid = ? inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join hrspatterns p on kr.patternid = p.patternid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left outer join autochartist_symbolupdates au on dss.symbolid = au.symbolid left outer join relevance_keylevels_results rar on rar.resultuid = kr.resultuid left join lateral calc_kl_signal_filter (kr.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where kr.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (kr.simulation = ? or kr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or p.patternname in (...)) and (? = ? or kr.patternclassid in (...)) and (? = ? or kr.patternlengthbars <= ?) and kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, ?::timestamp without time zone) -- to make sure patternstarttime is in our t-tables ), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc limit ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Jan 23 06 471 0ms 0ms 19 0ms 0ms 0ms 2 0ms lock table public.powerstats in access share mode;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Jan 23 06 2 0ms 0ms 20 0ms 0ms 0ms 4 0ms select oid, enumlabel from pg_catalog.pg_enum where enumtypid = ? order by enumsortorder;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Jan 23 06 4 0ms 0ms Time consuming prepare
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 2m21s 6 0ms 2m21s 23s620ms select recognitionengine, to_char(datetimeupdate, 'yyyy-mm-dd HH24:MI') from latest_candle_datetime_per_receng;Times Reported Time consuming prepare #1
Day Hour Count Duration Avg duration Jan 23 06 6 2m21s 23s620ms -
select recognitionengine, to_char(datetimeupdate, 'yyyy-mm-dd HH24:MI') from latest_candle_datetime_per_receng;
Date: 2026-01-23 06:19:47 Duration: 2m21s Database: postgres
-
select recognitionengine, to_char(datetimeupdate, 'yyyy-mm-dd HH24:MI') from latest_candle_datetime_per_receng;
Date: 2026-01-23 06:07:24 Duration: 10ms Database: postgres
-
select recognitionengine, to_char(datetimeupdate, 'yyyy-mm-dd HH24:MI') from latest_candle_datetime_per_receng;
Date: 2026-01-23 06:02:24 Duration: 0ms Database: postgres
2 3s148ms 4,172 0ms 14ms 0ms SELECT ;Times Reported Time consuming prepare #2
Day Hour Count Duration Avg duration 06 4,172 3s148ms 0ms -
SELECT ;
Date: 2026-01-23 06:33:45 Duration: 14ms Database: postgres
-
SELECT ;
Date: 2026-01-23 06:20:13 Duration: 13ms Database: postgres
-
SELECT ;
Date: 2026-01-23 06:36:50 Duration: 12ms Database: postgres
3 2s835ms 2,633 0ms 12ms 1ms WITH rar_max as ( ;Times Reported Time consuming prepare #3
Day Hour Count Duration Avg duration 06 2,633 2s835ms 1ms -
WITH rar_max as ( ;
Date: 2026-01-23 06:36:50 Duration: 12ms Database: postgres
-
WITH rar_max as ( ;
Date: 2026-01-23 06:01:09 Duration: 11ms Database: postgres
-
WITH rar_max as ( ;
Date: 2026-01-23 06:01:11 Duration: 10ms Database: postgres
4 1s419ms 1,155 0ms 10ms 1ms SELECT symbolid, ;Times Reported Time consuming prepare #4
Day Hour Count Duration Avg duration 06 1,155 1s419ms 1ms -
SELECT symbolid, ;
Date: 2026-01-23 06:17:30 Duration: 10ms Database: postgres
-
SELECT symbolid, ;
Date: 2026-01-23 06:01:18 Duration: 4ms Database: postgres
-
SELECT symbolid, ;
Date: 2026-01-23 06:46:23 Duration: 2ms Database: postgres
5 781ms 669 0ms 18ms 1ms SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;Times Reported Time consuming prepare #5
Day Hour Count Duration Avg duration 06 669 781ms 1ms -
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-23 06:16:12 Duration: 18ms Database: postgres
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-23 06:16:11 Duration: 2ms Database: postgres
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-23 06:01:16 Duration: 2ms Database: postgres
6 490ms 2,982 0ms 12ms 0ms SET extra_float_digits = 3;Times Reported Time consuming prepare #6
Day Hour Count Duration Avg duration 06 2,982 490ms 0ms -
SET extra_float_digits = 3;
Date: 2026-01-23 06:59:40 Duration: 12ms Database: postgres
-
SET extra_float_digits = 3;
Date: 2026-01-23 06:38:58 Duration: 10ms Database: postgres
-
SET extra_float_digits = 3;
Date: 2026-01-23 06:36:16 Duration: 6ms Database: postgres
7 284ms 3,106 0ms 0ms 0ms INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming prepare #7
Day Hour Count Duration Avg duration 06 3,106 284ms 0ms -
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:10:22 Duration: 0ms Database: postgres
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:30:04 Duration: 0ms Database: postgres
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:00:59 Duration: 0ms Database: postgres
8 207ms 1,980 0ms 0ms 0ms INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming prepare #8
Day Hour Count Duration Avg duration 06 1,980 207ms 0ms -
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:15:22 Duration: 0ms Database: postgres
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:01:02 Duration: 0ms Database: postgres
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:02:13 Duration: 0ms Database: postgres
9 191ms 3,015 0ms 11ms 0ms select 1;Times Reported Time consuming prepare #9
Day Hour Count Duration Avg duration 06 3,015 191ms 0ms -
select 1;
Date: 2026-01-23 06:16:19 Duration: 11ms Database: postgres
-
select 1;
Date: 2026-01-23 06:46:08 Duration: 9ms Database: postgres
-
select 1;
Date: 2026-01-23 06:39:28 Duration: 7ms Database: postgres
10 166ms 1,062 0ms 0ms 0ms INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming prepare #10
Day Hour Count Duration Avg duration 06 1,062 166ms 0ms -
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:02:26 Duration: 0ms Database: postgres
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:10:20 Duration: 0ms Database: postgres
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:41:23 Duration: 0ms Database: postgres
11 96ms 16 4ms 10ms 6ms with sym_info as ( ;Times Reported Time consuming prepare #11
Day Hour Count Duration Avg duration 06 16 96ms 6ms -
with sym_info as ( ;
Date: 2026-01-23 06:21:43 Duration: 10ms Database: postgres
-
with sym_info as ( ;
Date: 2026-01-23 06:36:42 Duration: 9ms Database: postgres
-
with sym_info as ( ;
Date: 2026-01-23 06:36:53 Duration: 7ms Database: postgres
12 84ms 18 1ms 35ms 4ms select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;Times Reported Time consuming prepare #12
Day Hour Count Duration Avg duration 06 18 84ms 4ms -
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2026-01-23 06:40:03 Duration: 35ms Database: postgres
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2026-01-23 06:30:03 Duration: 7ms Database: postgres
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2026-01-23 06:51:00 Duration: 3ms Database: postgres
13 44ms 2,956 0ms 6ms 0ms SET application_name = 'PostgreSQL JDBC Driver';Times Reported Time consuming prepare #13
Day Hour Count Duration Avg duration 06 2,956 44ms 0ms -
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-23 06:16:11 Duration: 6ms Database: postgres
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-23 06:36:20 Duration: 0ms Database: postgres
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-23 06:37:50 Duration: 0ms Database: postgres
14 36ms 29 0ms 6ms 1ms WITH last_candle AS ( ;Times Reported Time consuming prepare #14
Day Hour Count Duration Avg duration 06 29 36ms 1ms -
WITH last_candle AS ( ;
Date: 2026-01-23 06:32:00 Duration: 6ms Database: postgres
-
WITH last_candle AS ( ;
Date: 2026-01-23 06:48:00 Duration: 5ms Database: postgres
-
WITH last_candle AS ( ;
Date: 2026-01-23 06:04:00 Duration: 3ms Database: postgres
15 32ms 114 0ms 3ms 0ms SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;Times Reported Time consuming prepare #15
Day Hour Count Duration Avg duration 06 114 32ms 0ms -
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2026-01-23 06:12:50 Duration: 3ms Database: postgres
-
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2026-01-23 06:12:51 Duration: 0ms Database: postgres
-
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2026-01-23 06:12:52 Duration: 0ms Database: postgres
16 20ms 6 2ms 5ms 3ms with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;Times Reported Time consuming prepare #16
Day Hour Count Duration Avg duration 06 6 20ms 3ms -
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2026-01-23 06:40:02 Duration: 5ms Database: postgres
-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2026-01-23 06:30:02 Duration: 3ms Database: postgres
-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2026-01-23 06:50:02 Duration: 3ms Database: postgres
17 17ms 6 2ms 3ms 2ms select client_addr, count(1) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by client_addr, setting having (client_addr is not null OR (client_addr is null and count(1) > (cast(setting as numeric) / 3 * 2))) order by count desc;Times Reported Time consuming prepare #17
Day Hour Count Duration Avg duration 06 6 17ms 2ms -
select client_addr, count(1) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by client_addr, setting having (client_addr is not null OR (client_addr is null and count(1) > (cast(setting as numeric) / 3 * 2))) order by count desc;
Date: 2026-01-23 06:20:04 Duration: 3ms Database: postgres
-
select client_addr, count(1) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by client_addr, setting having (client_addr is not null OR (client_addr is null and count(1) > (cast(setting as numeric) / 3 * 2))) order by count desc;
Date: 2026-01-23 06:10:05 Duration: 3ms Database: postgres
-
select client_addr, count(1) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by client_addr, setting having (client_addr is not null OR (client_addr is null and count(1) > (cast(setting as numeric) / 3 * 2))) order by count desc;
Date: 2026-01-23 06:00:05 Duration: 3ms Database: postgres
18 15ms 8 0ms 3ms 1ms WITH pre_symbols AS ( /* find relevant symbols */ ;Times Reported Time consuming prepare #18
Day Hour Count Duration Avg duration 06 8 15ms 1ms -
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-23 06:12:49 Duration: 3ms Database: postgres
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-23 06:12:50 Duration: 3ms Database: postgres
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-23 06:12:49 Duration: 3ms Database: postgres
19 14ms 24 0ms 0ms 0ms select count(*) from datafeed_restarter_events where is_current_entry = 1;Times Reported Time consuming prepare #19
Day Hour Count Duration Avg duration 06 24 14ms 0ms -
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2026-01-23 06:05:00 Duration: 0ms Database: postgres
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2026-01-23 06:05:11 Duration: 0ms Database: postgres
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2026-01-23 06:10:03 Duration: 0ms Database: postgres
20 14ms 109 0ms 0ms 0ms INSERT INTO T240 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming prepare #20
Day Hour Count Duration Avg duration 06 109 14ms 0ms -
INSERT INTO T240 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:47:01 Duration: 0ms Database: postgres
-
INSERT INTO T240 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:30:02 Duration: 0ms Database: postgres
-
INSERT INTO T240 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:47:23 Duration: 0ms Database: postgres
Time consuming bind
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 37s735ms 4,825 0ms 54ms 7ms WITH rar_max as ( ;Times Reported Time consuming bind #1
Day Hour Count Duration Avg duration Jan 23 06 4,825 37s735ms 7ms -
WITH rar_max as ( ;
Date: 2026-01-23 06:08:01 Duration: 54ms Database: postgres parameters: $1 = '627', $2 = '7', $3 = '15', $4 = '30', $5 = '60', $6 = '120', $7 = '240', $8 = '480', $9 = '1440', $10 = '0', $11 = '', $12 = '213', $13 = '#ADBE', $14 = '#ALVG', $15 = '#AMZN', $16 = '#APPL', $17 = '#BA', $18 = '#BABA', $19 = '#BAYGn', $20 = '#BMWG', $21 = '#BNPP', $22 = '#CAT', $23 = '#CBKG', $24 = '#DAIGn', $25 = '#DIS', $26 = '#EA', $27 = '#FB', $28 = '#FDX', $29 = '#GE', $30 = '#GM', $31 = '#GOOGL', $32 = '#GS', $33 = '#INTC', $34 = '#JPM', $35 = '#KO', $36 = '#META', $37 = '#MSFT', $38 = '#NFLX', $39 = '#TSLA', $40 = '#VOWG', $41 = '#WMT', $42 = '#XOM', $43 = 'AUDCAD', $44 = 'AUDCHF', $45 = 'AUDJPY', $46 = 'AUDNZD', $47 = 'AUDUSD', $48 = 'AUS_200', $49 = 'BTCEUR', $50 = 'BTCGBP', $51 = 'BTCUSD', $52 = 'CADCHF', $53 = 'CADJPY', $54 = 'CHFJPY', $55 = 'CL_BRENT', $56 = 'DASHUSD', $57 = 'EOSUSD', $58 = 'ESP_35', $59 = 'ETHEUR', $60 = 'ETHGBP', $61 = 'ETHUSD', $62 = 'EURAUD', $63 = 'EURCAD', $64 = 'EURCHF', $65 = 'EURGBP', $66 = 'EURJPY', $67 = 'EURMXN', $68 = 'EURNOK', $69 = 'EURNZD', $70 = 'EURPLN', $71 = 'EURSEK', $72 = 'EURTRY', $73 = 'EURUSD', $74 = 'EUR_50', $75 = 'FRA_40', $76 = 'GBPAUD', $77 = 'GBPCAD', $78 = 'GBPCHF', $79 = 'GBPJPY', $80 = 'GBPNZD', $81 = 'GBPUSD', $82 = 'GBPZAR', $83 = 'GBR_100', $84 = 'HKDJPY', $85 = 'HKG_50', $86 = 'IOTAUSD', $87 = 'LTCEUR', $88 = 'LTCUSD', $89 = 'NAS100', $90 = 'NEOUSD', $91 = 'NOKJPY', $92 = 'NZDCAD', $93 = 'NZDCHF', $94 = 'NZDJPY', $95 = 'NZDUSD', $96 = 'OMGUSD', $97 = 'SPX500', $98 = 'TRXUSD', $99 = 'US30', $100 = 'USDCAD', $101 = 'USDCHF', $102 = 'USDCNH', $103 = 'USDDKK', $104 = 'USDJPY', $105 = 'USDMXN', $106 = 'USDNOK', $107 = 'USDPLN', $108 = 'USDSEK', $109 = 'USDSGD', $110 = 'USDZAR', $111 = 'USOIL', $112 = 'XAGUSD', $113 = 'XAUEUR', $114 = 'XAUUSD', $115 = 'XMRUSD', $116 = 'XPTUSD', $117 = 'XRPUSD', $118 = 'ZARJPY', $119 = 'ZECUSD', $120 = 'AUDCAD', $121 = 'AUDCHF', $122 = 'AUDJPY', $123 = 'AUDNZD', $124 = 'AUDUSD', $125 = 'CADCHF', $126 = 'CADJPY', $127 = 'CHFJPY', $128 = 'EURAUD', $129 = 'EURCAD', $130 = 'EURCHF', $131 = 'EURGBP', $132 = 'EURJPY', $133 = 'EURMXN', $134 = 'EURNOK', $135 = 'EURNZD', $136 = 'EURPLN', $137 = 'EURSEK', $138 = 'EURTRY', $139 = 'EURUSD', $140 = 'GBPAUD', $141 = 'GBPCAD', $142 = 'GBPCHF', $143 = 'GBPJPY', $144 = 'GBPNZD', $145 = 'GBPUSD', $146 = 'GBPZAR', $147 = 'HKDJPY', $148 = 'NOKJPY', $149 = 'NZDCAD', $150 = 'NZDCHF', $151 = 'NZDJPY', $152 = 'NZDUSD', $153 = 'USDCAD', $154 = 'USDCHF', $155 = 'USDCNH', $156 = 'USDDKK', $157 = 'USDJPY', $158 = 'USDMXN', $159 = 'USDNOK', $160 = 'USDPLN', $161 = 'USDSEK', $162 = 'USDSGD', $163 = 'USDZAR', $164 = 'ZARJPY', $165 = 'BTCEUR', $166 = 'BTCGBP', $167 = 'BTCUSD', $168 = 'DASHUSD', $169 = 'EOSUSD', $170 = 'ETHEUR', $171 = 'ETHGBP', $172 = 'ETHUSD', $173 = 'IOTAUSD', $174 = 'LTCEUR', $175 = 'LTCUSD', $176 = 'NEOUSD', $177 = 'OMGUSD', $178 = 'TRXUSD', $179 = 'XMRUSD', $180 = 'XRPUSD', $181 = 'ZECUSD', $182 = 'XAGUSD', $183 = 'XAUEUR', $184 = 'XAUUSD', $185 = 'XPTUSD', $186 = 'CL_BRENT', $187 = 'USOIL', $188 = '#ALVG', $189 = '#BAYGn', $190 = '#BMWG', $191 = '#BNPP', $192 = '#CBKG', $193 = '#DAIGn', $194 = '#VOWG', $195 = 'AUS_200', $196 = 'ESP_35', $197 = 'EUR_50', $198 = 'FRA_40', $199 = 'GBR_100', $200 = 'HKG_50', $201 = 'NAS100', $202 = 'SPX500', $203 = 'US30', $204 = '#ADBE', $205 = '#AMZN', $206 = '#APPL', $207 = '#BA', $208 = '#BABA', $209 = '#CAT', $210 = '#DIS', $211 = '#EA', $212 = '#FB', $213 = '#FDX', $214 = '#GE', $215 = '#GM', $216 = '#GOOGL', $217 = '#GS', $218 = '#INTC', $219 = '#JPM', $220 = '#KO', $221 = '#MSFT', $222 = '#NFLX', $223 = '#TSLA', $224 = '#WMT', $225 = '#XOM', $226 = '500', $227 = '500', $228 = 't', $229 = '10', $230 = '10'
-
WITH rar_max as ( ;
Date: 2026-01-23 06:15:59 Duration: 50ms Database: postgres parameters: $1 = 't', $2 = '627', $3 = '7', $4 = '15', $5 = '30', $6 = '60', $7 = '120', $8 = '240', $9 = '480', $10 = '1440', $11 = '0', $12 = '', $13 = '213', $14 = '#ADBE', $15 = '#ALVG', $16 = '#AMZN', $17 = '#APPL', $18 = '#BA', $19 = '#BABA', $20 = '#BAYGn', $21 = '#BMWG', $22 = '#BNPP', $23 = '#CAT', $24 = '#CBKG', $25 = '#DAIGn', $26 = '#DIS', $27 = '#EA', $28 = '#FB', $29 = '#FDX', $30 = '#GE', $31 = '#GM', $32 = '#GOOGL', $33 = '#GS', $34 = '#INTC', $35 = '#JPM', $36 = '#KO', $37 = '#META', $38 = '#MSFT', $39 = '#NFLX', $40 = '#TSLA', $41 = '#VOWG', $42 = '#WMT', $43 = '#XOM', $44 = 'AUDCAD', $45 = 'AUDCHF', $46 = 'AUDJPY', $47 = 'AUDNZD', $48 = 'AUDUSD', $49 = 'AUS_200', $50 = 'BTCEUR', $51 = 'BTCGBP', $52 = 'BTCUSD', $53 = 'CADCHF', $54 = 'CADJPY', $55 = 'CHFJPY', $56 = 'CL_BRENT', $57 = 'DASHUSD', $58 = 'EOSUSD', $59 = 'ESP_35', $60 = 'ETHEUR', $61 = 'ETHGBP', $62 = 'ETHUSD', $63 = 'EURAUD', $64 = 'EURCAD', $65 = 'EURCHF', $66 = 'EURGBP', $67 = 'EURJPY', $68 = 'EURMXN', $69 = 'EURNOK', $70 = 'EURNZD', $71 = 'EURPLN', $72 = 'EURSEK', $73 = 'EURTRY', $74 = 'EURUSD', $75 = 'EUR_50', $76 = 'FRA_40', $77 = 'GBPAUD', $78 = 'GBPCAD', $79 = 'GBPCHF', $80 = 'GBPJPY', $81 = 'GBPNZD', $82 = 'GBPUSD', $83 = 'GBPZAR', $84 = 'GBR_100', $85 = 'HKDJPY', $86 = 'HKG_50', $87 = 'IOTAUSD', $88 = 'LTCEUR', $89 = 'LTCUSD', $90 = 'NAS100', $91 = 'NEOUSD', $92 = 'NOKJPY', $93 = 'NZDCAD', $94 = 'NZDCHF', $95 = 'NZDJPY', $96 = 'NZDUSD', $97 = 'OMGUSD', $98 = 'SPX500', $99 = 'TRXUSD', $100 = 'US30', $101 = 'USDCAD', $102 = 'USDCHF', $103 = 'USDCNH', $104 = 'USDDKK', $105 = 'USDJPY', $106 = 'USDMXN', $107 = 'USDNOK', $108 = 'USDPLN', $109 = 'USDSEK', $110 = 'USDSGD', $111 = 'USDZAR', $112 = 'USOIL', $113 = 'XAGUSD', $114 = 'XAUEUR', $115 = 'XAUUSD', $116 = 'XMRUSD', $117 = 'XPTUSD', $118 = 'XRPUSD', $119 = 'ZARJPY', $120 = 'ZECUSD', $121 = 'AUDCAD', $122 = 'AUDCHF', $123 = 'AUDJPY', $124 = 'AUDNZD', $125 = 'AUDUSD', $126 = 'CADCHF', $127 = 'CADJPY', $128 = 'CHFJPY', $129 = 'EURAUD', $130 = 'EURCAD', $131 = 'EURCHF', $132 = 'EURGBP', $133 = 'EURJPY', $134 = 'EURMXN', $135 = 'EURNOK', $136 = 'EURNZD', $137 = 'EURPLN', $138 = 'EURSEK', $139 = 'EURTRY', $140 = 'EURUSD', $141 = 'GBPAUD', $142 = 'GBPCAD', $143 = 'GBPCHF', $144 = 'GBPJPY', $145 = 'GBPNZD', $146 = 'GBPUSD', $147 = 'GBPZAR', $148 = 'HKDJPY', $149 = 'NOKJPY', $150 = 'NZDCAD', $151 = 'NZDCHF', $152 = 'NZDJPY', $153 = 'NZDUSD', $154 = 'USDCAD', $155 = 'USDCHF', $156 = 'USDCNH', $157 = 'USDDKK', $158 = 'USDJPY', $159 = 'USDMXN', $160 = 'USDNOK', $161 = 'USDPLN', $162 = 'USDSEK', $163 = 'USDSGD', $164 = 'USDZAR', $165 = 'ZARJPY', $166 = 'BTCEUR', $167 = 'BTCGBP', $168 = 'BTCUSD', $169 = 'DASHUSD', $170 = 'EOSUSD', $171 = 'ETHEUR', $172 = 'ETHGBP', $173 = 'ETHUSD', $174 = 'IOTAUSD', $175 = 'LTCEUR', $176 = 'LTCUSD', $177 = 'NEOUSD', $178 = 'OMGUSD', $179 = 'TRXUSD', $180 = 'XMRUSD', $181 = 'XRPUSD', $182 = 'ZECUSD', $183 = 'XAGUSD', $184 = 'XAUEUR', $185 = 'XAUUSD', $186 = 'XPTUSD', $187 = 'CL_BRENT', $188 = 'USOIL', $189 = '#ALVG', $190 = '#BAYGn', $191 = '#BMWG', $192 = '#BNPP', $193 = '#CBKG', $194 = '#DAIGn', $195 = '#VOWG', $196 = 'AUS_200', $197 = 'ESP_35', $198 = 'EUR_50', $199 = 'FRA_40', $200 = 'GBR_100', $201 = 'HKG_50', $202 = 'NAS100', $203 = 'SPX500', $204 = 'US30', $205 = '#ADBE', $206 = '#AMZN', $207 = '#APPL', $208 = '#BA', $209 = '#BABA', $210 = '#CAT', $211 = '#DIS', $212 = '#EA', $213 = '#FB', $214 = '#FDX', $215 = '#GE', $216 = '#GM', $217 = '#GOOGL', $218 = '#GS', $219 = '#INTC', $220 = '#JPM', $221 = '#KO', $222 = '#MSFT', $223 = '#NFLX', $224 = '#TSLA', $225 = '#WMT', $226 = '#XOM', $227 = '0', $228 = '', $229 = '0', $230 = '0', $231 = '0', $232 = '700', $233 = '700', $234 = 't', $235 = '10', $236 = '10'
-
WITH rar_max as ( ;
Date: 2026-01-23 06:16:04 Duration: 43ms Database: postgres parameters: $1 = '627', $2 = '7', $3 = '15', $4 = '30', $5 = '60', $6 = '120', $7 = '240', $8 = '480', $9 = '1440', $10 = '0', $11 = '', $12 = '213', $13 = '#ADBE', $14 = '#ALVG', $15 = '#AMZN', $16 = '#APPL', $17 = '#BA', $18 = '#BABA', $19 = '#BAYGn', $20 = '#BMWG', $21 = '#BNPP', $22 = '#CAT', $23 = '#CBKG', $24 = '#DAIGn', $25 = '#DIS', $26 = '#EA', $27 = '#FB', $28 = '#FDX', $29 = '#GE', $30 = '#GM', $31 = '#GOOGL', $32 = '#GS', $33 = '#INTC', $34 = '#JPM', $35 = '#KO', $36 = '#META', $37 = '#MSFT', $38 = '#NFLX', $39 = '#TSLA', $40 = '#VOWG', $41 = '#WMT', $42 = '#XOM', $43 = 'AUDCAD', $44 = 'AUDCHF', $45 = 'AUDJPY', $46 = 'AUDNZD', $47 = 'AUDUSD', $48 = 'AUS_200', $49 = 'BTCEUR', $50 = 'BTCGBP', $51 = 'BTCUSD', $52 = 'CADCHF', $53 = 'CADJPY', $54 = 'CHFJPY', $55 = 'CL_BRENT', $56 = 'DASHUSD', $57 = 'EOSUSD', $58 = 'ESP_35', $59 = 'ETHEUR', $60 = 'ETHGBP', $61 = 'ETHUSD', $62 = 'EURAUD', $63 = 'EURCAD', $64 = 'EURCHF', $65 = 'EURGBP', $66 = 'EURJPY', $67 = 'EURMXN', $68 = 'EURNOK', $69 = 'EURNZD', $70 = 'EURPLN', $71 = 'EURSEK', $72 = 'EURTRY', $73 = 'EURUSD', $74 = 'EUR_50', $75 = 'FRA_40', $76 = 'GBPAUD', $77 = 'GBPCAD', $78 = 'GBPCHF', $79 = 'GBPJPY', $80 = 'GBPNZD', $81 = 'GBPUSD', $82 = 'GBPZAR', $83 = 'GBR_100', $84 = 'HKDJPY', $85 = 'HKG_50', $86 = 'IOTAUSD', $87 = 'LTCEUR', $88 = 'LTCUSD', $89 = 'NAS100', $90 = 'NEOUSD', $91 = 'NOKJPY', $92 = 'NZDCAD', $93 = 'NZDCHF', $94 = 'NZDJPY', $95 = 'NZDUSD', $96 = 'OMGUSD', $97 = 'SPX500', $98 = 'TRXUSD', $99 = 'US30', $100 = 'USDCAD', $101 = 'USDCHF', $102 = 'USDCNH', $103 = 'USDDKK', $104 = 'USDJPY', $105 = 'USDMXN', $106 = 'USDNOK', $107 = 'USDPLN', $108 = 'USDSEK', $109 = 'USDSGD', $110 = 'USDZAR', $111 = 'USOIL', $112 = 'XAGUSD', $113 = 'XAUEUR', $114 = 'XAUUSD', $115 = 'XMRUSD', $116 = 'XPTUSD', $117 = 'XRPUSD', $118 = 'ZARJPY', $119 = 'ZECUSD', $120 = 'AUDCAD', $121 = 'AUDCHF', $122 = 'AUDJPY', $123 = 'AUDNZD', $124 = 'AUDUSD', $125 = 'CADCHF', $126 = 'CADJPY', $127 = 'CHFJPY', $128 = 'EURAUD', $129 = 'EURCAD', $130 = 'EURCHF', $131 = 'EURGBP', $132 = 'EURJPY', $133 = 'EURMXN', $134 = 'EURNOK', $135 = 'EURNZD', $136 = 'EURPLN', $137 = 'EURSEK', $138 = 'EURTRY', $139 = 'EURUSD', $140 = 'GBPAUD', $141 = 'GBPCAD', $142 = 'GBPCHF', $143 = 'GBPJPY', $144 = 'GBPNZD', $145 = 'GBPUSD', $146 = 'GBPZAR', $147 = 'HKDJPY', $148 = 'NOKJPY', $149 = 'NZDCAD', $150 = 'NZDCHF', $151 = 'NZDJPY', $152 = 'NZDUSD', $153 = 'USDCAD', $154 = 'USDCHF', $155 = 'USDCNH', $156 = 'USDDKK', $157 = 'USDJPY', $158 = 'USDMXN', $159 = 'USDNOK', $160 = 'USDPLN', $161 = 'USDSEK', $162 = 'USDSGD', $163 = 'USDZAR', $164 = 'ZARJPY', $165 = 'BTCEUR', $166 = 'BTCGBP', $167 = 'BTCUSD', $168 = 'DASHUSD', $169 = 'EOSUSD', $170 = 'ETHEUR', $171 = 'ETHGBP', $172 = 'ETHUSD', $173 = 'IOTAUSD', $174 = 'LTCEUR', $175 = 'LTCUSD', $176 = 'NEOUSD', $177 = 'OMGUSD', $178 = 'TRXUSD', $179 = 'XMRUSD', $180 = 'XRPUSD', $181 = 'ZECUSD', $182 = 'XAGUSD', $183 = 'XAUEUR', $184 = 'XAUUSD', $185 = 'XPTUSD', $186 = 'CL_BRENT', $187 = 'USOIL', $188 = '#ALVG', $189 = '#BAYGn', $190 = '#BMWG', $191 = '#BNPP', $192 = '#CBKG', $193 = '#DAIGn', $194 = '#VOWG', $195 = 'AUS_200', $196 = 'ESP_35', $197 = 'EUR_50', $198 = 'FRA_40', $199 = 'GBR_100', $200 = 'HKG_50', $201 = 'NAS100', $202 = 'SPX500', $203 = 'US30', $204 = '#ADBE', $205 = '#AMZN', $206 = '#APPL', $207 = '#BA', $208 = '#BABA', $209 = '#CAT', $210 = '#DIS', $211 = '#EA', $212 = '#FB', $213 = '#FDX', $214 = '#GE', $215 = '#GM', $216 = '#GOOGL', $217 = '#GS', $218 = '#INTC', $219 = '#JPM', $220 = '#KO', $221 = '#MSFT', $222 = '#NFLX', $223 = '#TSLA', $224 = '#WMT', $225 = '#XOM', $226 = '700', $227 = '700', $228 = 't', $229 = '10', $230 = '10'
2 11s77ms 21,070 0ms 18ms 0ms SELECT ;Times Reported Time consuming bind #2
Day Hour Count Duration Avg duration 06 21,070 11s77ms 0ms -
SELECT ;
Date: 2026-01-23 06:15:04 Duration: 18ms Database: postgres parameters: $1 = '667', $2 = '0', $3 = '0', $4 = 'FRA40', $5 = 'FRA40'
-
SELECT ;
Date: 2026-01-23 06:36:50 Duration: 17ms Database: postgres parameters: $1 = '958', $2 = '958', $3 = '515840232246478300'
-
SELECT ;
Date: 2026-01-23 06:37:50 Duration: 17ms Database: postgres parameters: $1 = '958', $2 = '958', $3 = '515840217487435300'
3 2s660ms 1,155 0ms 14ms 2ms SELECT symbolid, ;Times Reported Time consuming bind #3
Day Hour Count Duration Avg duration 06 1,155 2s660ms 2ms -
SELECT symbolid, ;
Date: 2026-01-23 06:02:08 Duration: 14ms Database: postgres parameters: $1 = 'GLOBALGTMT5', $2 = '15', $3 = 'EURGBP', $4 = 'EURHUF', $5 = 'EURAUD'
-
SELECT symbolid, ;
Date: 2026-01-23 06:40:10 Duration: 12ms Database: postgres parameters: $1 = 'BDSWISS', $2 = '30', $3 = 'AUS_200'
-
SELECT symbolid, ;
Date: 2026-01-23 06:31:19 Duration: 9ms Database: postgres parameters: $1 = 'BDSWISS', $2 = '15', $3 = 'NAS100'
4 1s209ms 669 1ms 7ms 1ms SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;Times Reported Time consuming bind #4
Day Hour Count Duration Avg duration 06 669 1s209ms 1ms -
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-23 06:16:13 Duration: 7ms Database: postgres parameters: $1 = 'GLOBALGTMT5'
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-23 06:16:04 Duration: 4ms Database: postgres parameters: $1 = 'MILLENNIUMPF'
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-23 06:01:00 Duration: 2ms Database: postgres parameters: $1 = 'PEPPERSTONE'
5 897ms 105 4ms 24ms 8ms WITH last_candle AS ( ;Times Reported Time consuming bind #5
Day Hour Count Duration Avg duration 06 105 897ms 8ms -
WITH last_candle AS ( ;
Date: 2026-01-23 06:36:00 Duration: 24ms Database: postgres parameters: $1 = '558', $2 = '558'
-
WITH last_candle AS ( ;
Date: 2026-01-23 06:36:00 Duration: 23ms Database: postgres parameters: $1 = '558', $2 = '558'
-
WITH last_candle AS ( ;
Date: 2026-01-23 06:20:00 Duration: 20ms Database: postgres parameters: $1 = '558', $2 = '558'
6 705ms 16 28ms 143ms 44ms with sym_info as ( ;Times Reported Time consuming bind #6
Day Hour Count Duration Avg duration 06 16 705ms 44ms -
with sym_info as ( ;
Date: 2026-01-23 06:36:42 Duration: 143ms Database: postgres parameters: $1 = '620', $2 = 'Forex', $3 = 'Forex', $4 = '620', $5 = 'Forex', $6 = '620', $7 = '620', $8 = 'Forex', $9 = '620'
-
with sym_info as ( ;
Date: 2026-01-23 06:21:43 Duration: 62ms Database: postgres parameters: $1 = '620', $2 = 'Forex', $3 = 'Forex', $4 = '620', $5 = 'Forex', $6 = '620', $7 = '620', $8 = 'Forex', $9 = '620'
-
with sym_info as ( ;
Date: 2026-01-23 06:51:53 Duration: 51ms Database: postgres parameters: $1 = '627', $2 = 'Forex', $3 = 'Forex', $4 = '627', $5 = 'Forex', $6 = '627', $7 = '627', $8 = 'Forex', $9 = '627'
7 518ms 21,027 0ms 6ms 0ms select 1;Times Reported Time consuming bind #7
Day Hour Count Duration Avg duration 06 21,027 518ms 0ms -
select 1;
Date: 2026-01-23 06:38:04 Duration: 6ms Database: postgres
-
select 1;
Date: 2026-01-23 06:36:00 Duration: 2ms Database: postgres
-
select 1;
Date: 2026-01-23 06:31:08 Duration: 2ms Database: postgres
8 463ms 20 0ms 54ms 23ms with wh_patitioned as ( ;Times Reported Time consuming bind #8
Day Hour Count Duration Avg duration 06 20 463ms 23ms -
with wh_patitioned as ( ;
Date: 2026-01-23 06:34:11 Duration: 54ms Database: postgres parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
-
with wh_patitioned as ( ;
Date: 2026-01-23 06:20:03 Duration: 51ms Database: postgres parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
-
with wh_patitioned as ( ;
Date: 2026-01-23 06:10:02 Duration: 48ms Database: postgres parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
9 272ms 5,657 0ms 0ms 0ms INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming bind #9
Day Hour Count Duration Avg duration 06 5,657 272ms 0ms -
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:02:11 Duration: 0ms Database: postgres parameters: $1 = '2026-01-23 05:45:00', $2 = '0.928375', $3 = '0.928395', $4 = '0.928265', $5 = '0.92833', $6 = '285', $7 = '515840230468413300', $8 = '0', $9 = '2026-01-23 06:02:11.275', $10 = '2026-01-23 06:02:11.163', $11 = '0.928375', $12 = '0.928395', $13 = '0.928265', $14 = '0.92833', $15 = '285', $16 = '0', $17 = '2026-01-23 06:02:11.275', $18 = '2026-01-23 06:02:11.163'
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:01:16 Duration: 0ms Database: postgres parameters: $1 = '2026-01-23 06:45:00', $2 = '32.5899', $3 = '32.59', $4 = '32.5558', $5 = '32.57965', $6 = '1254', $7 = '515840249404523300', $8 = '0', $9 = '2026-01-23 06:01:16.135', $10 = '2026-01-23 06:01:16.073', $11 = '32.5899', $12 = '32.59', $13 = '32.5558', $14 = '32.57965', $15 = '1254', $16 = '0', $17 = '2026-01-23 06:01:16.135', $18 = '2026-01-23 06:01:16.073'
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:02:26 Duration: 0ms Database: postgres parameters: $1 = '2026-01-23 06:45:00', $2 = '0.79044', $3 = '0.79051', $4 = '0.790305', $5 = '0.79048', $6 = '306', $7 = '515840249377809300', $8 = '0', $9 = '2026-01-23 06:02:26.745', $10 = '2026-01-23 06:02:26.692', $11 = '0.79044', $12 = '0.79051', $13 = '0.790305', $14 = '0.79048', $15 = '306', $16 = '0', $17 = '2026-01-23 06:02:26.745', $18 = '2026-01-23 06:02:26.692'
10 258ms 3,248 0ms 1ms 0ms INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming bind #10
Day Hour Count Duration Avg duration 06 3,248 258ms 0ms -
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:30:08 Duration: 1ms Database: postgres parameters: $1 = '2026-01-23 06:00:00', $2 = '25577.15', $3 = '25581.15', $4 = '25566.15', $5 = '25578.9', $6 = '3397', $7 = '500991628277474200', $8 = '0', $9 = '2026-01-23 06:30:08.721', $10 = '2026-01-23 06:30:08.72', $11 = '25577.15', $12 = '25581.15', $13 = '25566.15', $14 = '25578.9', $15 = '3397', $16 = '0', $17 = '2026-01-23 06:30:08.721', $18 = '2026-01-23 06:30:08.72'
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:30:37 Duration: 0ms Database: postgres parameters: $1 = '2026-01-23 06:00:00', $2 = '13.28754', $3 = '13.2906', $4 = '13.27808', $5 = '13.28856', $6 = '3170', $7 = '515840243204359300', $8 = '0', $9 = '2026-01-23 06:30:37.013', $10 = '2026-01-23 06:30:37.013', $11 = '13.28754', $12 = '13.2906', $13 = '13.27808', $14 = '13.28856', $15 = '3170', $16 = '0', $17 = '2026-01-23 06:30:37.013', $18 = '2026-01-23 06:30:37.013'
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:31:18 Duration: 0ms Database: postgres parameters: $1 = '2026-01-23 06:00:00', $2 = '0.81483', $3 = '0.81506', $4 = '0.81461', $5 = '0.81497', $6 = '1438', $7 = '515840243903571300', $8 = '0', $9 = '2026-01-23 06:31:18.494', $10 = '2026-01-23 06:31:18.493', $11 = '0.81483', $12 = '0.81506', $13 = '0.81461', $14 = '0.81497', $15 = '1438', $16 = '0', $17 = '2026-01-23 06:31:18.494', $18 = '2026-01-23 06:31:18.493'
11 189ms 69 0ms 20ms 2ms WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;Times Reported Time consuming bind #11
Day Hour Count Duration Avg duration 06 69 189ms 2ms -
WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;
Date: 2026-01-23 06:36:42 Duration: 20ms Database: postgres parameters: $1 = '689', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '', $10 = '0', $11 = '0'
-
WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;
Date: 2026-01-23 06:07:32 Duration: 18ms Database: postgres parameters: $1 = '667', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '', $10 = '0', $11 = '0'
-
WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;
Date: 2026-01-23 06:52:21 Duration: 18ms Database: postgres parameters: $1 = '667', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '', $10 = '0', $11 = '0'
12 187ms 2,138 0ms 5ms 0ms INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming bind #12
Day Hour Count Duration Avg duration 06 2,138 187ms 0ms -
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:01:15 Duration: 5ms Database: postgres parameters: $1 = '2026-01-23 05:00:00', $2 = '186.287', $3 = '186.464', $4 = '186.206', $5 = '186.295', $6 = '5200', $7 = '515840230415345300', $8 = '0', $9 = '2026-01-23 06:01:15.016', $10 = '2026-01-23 06:01:15.015', $11 = '186.287', $12 = '186.464', $13 = '186.206', $14 = '186.295', $15 = '5200', $16 = '0', $17 = '2026-01-23 06:01:15.016', $18 = '2026-01-23 06:01:15.015'
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:16:24 Duration: 0ms Database: postgres parameters: $1 = '2026-01-22 19:00:00', $2 = '53955', $3 = '54060', $4 = '53940', $5 = '54035', $6 = '680', $7 = '515840230561416300', $8 = '0', $9 = '2026-01-23 06:16:24.648', $10 = '2026-01-23 06:16:24.638', $11 = '53955', $12 = '54060', $13 = '53940', $14 = '54035', $15 = '680', $16 = '0', $17 = '2026-01-23 06:16:24.648', $18 = '2026-01-23 06:16:24.638'
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2026-01-23 06:00:57 Duration: 0ms Database: postgres parameters: $1 = '2026-01-23 05:00:00', $2 = '0.81491', $3 = '0.81492', $4 = '0.81416', $5 = '0.81479', $6 = '3816', $7 = '515840233474917300', $8 = '0', $9 = '2026-01-23 06:00:57.084', $10 = '2026-01-23 06:00:57.083', $11 = '0.81491', $12 = '0.81492', $13 = '0.81416', $14 = '0.81479', $15 = '3816', $16 = '0', $17 = '2026-01-23 06:00:57.084', $18 = '2026-01-23 06:00:57.083'
13 114ms 6 3ms 71ms 19ms with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;Times Reported Time consuming bind #13
Day Hour Count Duration Avg duration 06 6 114ms 19ms -
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2026-01-23 06:40:02 Duration: 71ms Database: postgres
-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2026-01-23 06:30:02 Duration: 12ms Database: postgres
-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2026-01-23 06:50:02 Duration: 11ms Database: postgres
14 82ms 1 82ms 82ms 82ms with maxwhid as ( ;Times Reported Time consuming bind #14
Day Hour Count Duration Avg duration 06 1 82ms 82ms -
with maxwhid as ( ;
Date: 2026-01-23 06:12:49 Duration: 82ms Database: postgres parameters: $1 = '335', $2 = '621', $3 = '637', $4 = '642', $5 = '666', $6 = '660', $7 = '643', $8 = '630', $9 = '680', $10 = '641', $11 = '431', $12 = '622', $13 = '489', $14 = '529', $15 = '576', $16 = '665', $17 = '667', $18 = '558', $19 = '620', $20 = '125', $21 = '488', $22 = '567', $23 = '689', $24 = '700', $25 = '758', $26 = '763', $27 = '765', $28 = '817', $29 = '914', $30 = '972'
15 78ms 114 0ms 7ms 0ms SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;Times Reported Time consuming bind #15
Day Hour Count Duration Avg duration 06 114 78ms 0ms -
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2026-01-23 06:12:50 Duration: 7ms Database: postgres
-
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2026-01-23 06:12:52 Duration: 1ms Database: postgres
-
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2026-01-23 06:12:50 Duration: 1ms Database: postgres
16 71ms 8 4ms 28ms 8ms WITH pre_symbols AS ( /* find relevant symbols */ ;Times Reported Time consuming bind #16
Day Hour Count Duration Avg duration 06 8 71ms 8ms -
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-23 06:12:49 Duration: 28ms Database: postgres parameters: $1 = '1018', $2 = 'ICMARKETS-AU-MT5', $3 = 'AAPL.NAS', $4 = 'ABBV.NYSE', $5 = 'AMCR.NYSE', $6 = 'AMP.NYSE', $7 = 'AMZN.NAS', $8 = 'ANZ.ASX', $9 = 'AUDJPY', $10 = 'AUDUSD', $11 = 'AUS200', $12 = 'BABA.NYSE', $13 = 'BIIB.NAS', $14 = 'BXB.ASX', $15 = 'CBA.ASX', $16 = 'CHINA50', $17 = 'CSL.ASX', $18 = 'DE30', $19 = 'ES35', $20 = 'EURCHF', $21 = 'EURGBP', $22 = 'EURUSD', $23 = 'F40', $24 = 'FMG.ASX', $25 = 'GBPJPY', $26 = 'GBPUSD', $27 = 'GOOG.NAS', $28 = 'HK50', $29 = 'IT40', $30 = 'JP225', $31 = 'KO.NYSE', $32 = 'MQG.ASX', $33 = 'MSFT.NAS', $34 = 'NAB.ASX', $35 = 'NFLX.NAS', $36 = 'PYPL.NAS', $37 = 'QBE.ASX', $38 = 'STOXX50', $39 = 'SUN.ASX', $40 = 'TCL.ASX', $41 = 'TLS.ASX', $42 = 'TSLA.NAS', $43 = 'UK100', $44 = 'UNH.NYSE', $45 = 'US2000', $46 = 'US30', $47 = 'US500', $48 = 'USDCAD', $49 = 'USDCHF', $50 = 'USDCNH', $51 = 'USDJPY', $52 = 'USTEC', $53 = 'WBC.ASX', $54 = 'WES.ASX', $55 = 'WOW.ASX', $56 = 'WPL.ASX', $57 = 'XAUEUR', $58 = 'XAUUSD', $59 = 'XBRUSD', $60 = 'XTIUSD', $61 = 'AAPL.NAS', $62 = 'ABBV.NYSE', $63 = 'AMCR.NYSE', $64 = 'AMP.NYSE', $65 = 'AMZN.NAS', $66 = 'ANZ.ASX', $67 = 'AUDJPY', $68 = 'AUDUSD', $69 = 'AUS200', $70 = 'BABA.NYSE', $71 = 'BIIB.NAS', $72 = 'BXB.ASX', $73 = 'CBA.ASX', $74 = 'CHINA50', $75 = 'CSL.ASX', $76 = 'DE30', $77 = 'ES35', $78 = 'EURCHF', $79 = 'EURGBP', $80 = 'EURUSD', $81 = 'F40', $82 = 'FMG.ASX', $83 = 'GBPJPY', $84 = 'GBPUSD', $85 = 'GOOG.NAS', $86 = 'HK50', $87 = 'IT40', $88 = 'JP225', $89 = 'KO.NYSE', $90 = 'MQG.ASX', $91 = 'MSFT.NAS', $92 = 'NAB.ASX', $93 = 'NFLX.NAS', $94 = 'PYPL.NAS', $95 = 'QBE.ASX', $96 = 'STOXX50', $97 = 'SUN.ASX', $98 = 'TCL.ASX', $99 = 'TLS.ASX', $100 = 'TSLA.NAS', $101 = 'UK100', $102 = 'UNH.NYSE', $103 = 'US2000', $104 = 'US30', $105 = 'US500', $106 = 'USDCAD', $107 = 'USDCHF', $108 = 'USDCNH', $109 = 'USDJPY', $110 = 'USTEC', $111 = 'WBC.ASX', $112 = 'WES.ASX', $113 = 'WOW.ASX', $114 = 'WPL.ASX', $115 = 'XAUEUR', $116 = 'XAUUSD', $117 = 'XBRUSD', $118 = 'XTIUSD', $119 = '5'
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-23 06:12:49 Duration: 10ms Database: postgres parameters: $1 = '1018', $2 = 'ICMARKETS-AU-MT5', $3 = 'AAPL.NAS', $4 = 'ABBV.NYSE', $5 = 'AMCR.NYSE', $6 = 'AMP.NYSE', $7 = 'AMZN.NAS', $8 = 'ANZ.ASX', $9 = 'AUDJPY', $10 = 'AUDUSD', $11 = 'AUS200', $12 = 'BABA.NYSE', $13 = 'BIIB.NAS', $14 = 'BXB.ASX', $15 = 'CBA.ASX', $16 = 'CHINA50', $17 = 'CSL.ASX', $18 = 'DE30', $19 = 'ES35', $20 = 'EURCHF', $21 = 'EURGBP', $22 = 'EURUSD', $23 = 'F40', $24 = 'FMG.ASX', $25 = 'GBPJPY', $26 = 'GBPUSD', $27 = 'GOOG.NAS', $28 = 'HK50', $29 = 'IT40', $30 = 'JP225', $31 = 'KO.NYSE', $32 = 'MQG.ASX', $33 = 'MSFT.NAS', $34 = 'NAB.ASX', $35 = 'NFLX.NAS', $36 = 'PYPL.NAS', $37 = 'QBE.ASX', $38 = 'STOXX50', $39 = 'SUN.ASX', $40 = 'TCL.ASX', $41 = 'TLS.ASX', $42 = 'TSLA.NAS', $43 = 'UK100', $44 = 'UNH.NYSE', $45 = 'US2000', $46 = 'US30', $47 = 'US500', $48 = 'USDCAD', $49 = 'USDCHF', $50 = 'USDCNH', $51 = 'USDJPY', $52 = 'USTEC', $53 = 'WBC.ASX', $54 = 'WES.ASX', $55 = 'WOW.ASX', $56 = 'WPL.ASX', $57 = 'XAUEUR', $58 = 'XAUUSD', $59 = 'XBRUSD', $60 = 'XTIUSD', $61 = 'AAPL.NAS', $62 = 'ABBV.NYSE', $63 = 'AMCR.NYSE', $64 = 'AMP.NYSE', $65 = 'AMZN.NAS', $66 = 'ANZ.ASX', $67 = 'AUDJPY', $68 = 'AUDUSD', $69 = 'AUS200', $70 = 'BABA.NYSE', $71 = 'BIIB.NAS', $72 = 'BXB.ASX', $73 = 'CBA.ASX', $74 = 'CHINA50', $75 = 'CSL.ASX', $76 = 'DE30', $77 = 'ES35', $78 = 'EURCHF', $79 = 'EURGBP', $80 = 'EURUSD', $81 = 'F40', $82 = 'FMG.ASX', $83 = 'GBPJPY', $84 = 'GBPUSD', $85 = 'GOOG.NAS', $86 = 'HK50', $87 = 'IT40', $88 = 'JP225', $89 = 'KO.NYSE', $90 = 'MQG.ASX', $91 = 'MSFT.NAS', $92 = 'NAB.ASX', $93 = 'NFLX.NAS', $94 = 'PYPL.NAS', $95 = 'QBE.ASX', $96 = 'STOXX50', $97 = 'SUN.ASX', $98 = 'TCL.ASX', $99 = 'TLS.ASX', $100 = 'TSLA.NAS', $101 = 'UK100', $102 = 'UNH.NYSE', $103 = 'US2000', $104 = 'US30', $105 = 'US500', $106 = 'USDCAD', $107 = 'USDCHF', $108 = 'USDCNH', $109 = 'USDJPY', $110 = 'USTEC', $111 = 'WBC.ASX', $112 = 'WES.ASX', $113 = 'WOW.ASX', $114 = 'WPL.ASX', $115 = 'XAUEUR', $116 = 'XAUUSD', $117 = 'XBRUSD', $118 = 'XTIUSD', $119 = '5'
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-23 06:12:50 Duration: 9ms Database: postgres parameters: $1 = '1018', $2 = 'ICMARKETS-AU-MT5', $3 = 'AAPL.NAS', $4 = 'ABBV.NYSE', $5 = 'AMCR.NYSE', $6 = 'AMP.NYSE', $7 = 'AMZN.NAS', $8 = 'ANZ.ASX', $9 = 'AUDJPY', $10 = 'AUDUSD', $11 = 'AUS200', $12 = 'BABA.NYSE', $13 = 'BIIB.NAS', $14 = 'BXB.ASX', $15 = 'CBA.ASX', $16 = 'CHINA50', $17 = 'CSL.ASX', $18 = 'DE30', $19 = 'ES35', $20 = 'EURCHF', $21 = 'EURGBP', $22 = 'EURUSD', $23 = 'F40', $24 = 'FMG.ASX', $25 = 'GBPJPY', $26 = 'GBPUSD', $27 = 'GOOG.NAS', $28 = 'HK50', $29 = 'IT40', $30 = 'JP225', $31 = 'KO.NYSE', $32 = 'MQG.ASX', $33 = 'MSFT.NAS', $34 = 'NAB.ASX', $35 = 'NFLX.NAS', $36 = 'PYPL.NAS', $37 = 'QBE.ASX', $38 = 'STOXX50', $39 = 'SUN.ASX', $40 = 'TCL.ASX', $41 = 'TLS.ASX', $42 = 'TSLA.NAS', $43 = 'UK100', $44 = 'UNH.NYSE', $45 = 'US2000', $46 = 'US30', $47 = 'US500', $48 = 'USDCAD', $49 = 'USDCHF', $50 = 'USDCNH', $51 = 'USDJPY', $52 = 'USTEC', $53 = 'WBC.ASX', $54 = 'WES.ASX', $55 = 'WOW.ASX', $56 = 'WPL.ASX', $57 = 'XAUEUR', $58 = 'XAUUSD', $59 = 'XBRUSD', $60 = 'XTIUSD', $61 = 'AAPL.NAS', $62 = 'ABBV.NYSE', $63 = 'AMCR.NYSE', $64 = 'AMP.NYSE', $65 = 'AMZN.NAS', $66 = 'ANZ.ASX', $67 = 'AUDJPY', $68 = 'AUDUSD', $69 = 'AUS200', $70 = 'BABA.NYSE', $71 = 'BIIB.NAS', $72 = 'BXB.ASX', $73 = 'CBA.ASX', $74 = 'CHINA50', $75 = 'CSL.ASX', $76 = 'DE30', $77 = 'ES35', $78 = 'EURCHF', $79 = 'EURGBP', $80 = 'EURUSD', $81 = 'F40', $82 = 'FMG.ASX', $83 = 'GBPJPY', $84 = 'GBPUSD', $85 = 'GOOG.NAS', $86 = 'HK50', $87 = 'IT40', $88 = 'JP225', $89 = 'KO.NYSE', $90 = 'MQG.ASX', $91 = 'MSFT.NAS', $92 = 'NAB.ASX', $93 = 'NFLX.NAS', $94 = 'PYPL.NAS', $95 = 'QBE.ASX', $96 = 'STOXX50', $97 = 'SUN.ASX', $98 = 'TCL.ASX', $99 = 'TLS.ASX', $100 = 'TSLA.NAS', $101 = 'UK100', $102 = 'UNH.NYSE', $103 = 'US2000', $104 = 'US30', $105 = 'US500', $106 = 'USDCAD', $107 = 'USDCHF', $108 = 'USDCNH', $109 = 'USDJPY', $110 = 'USTEC', $111 = 'WBC.ASX', $112 = 'WES.ASX', $113 = 'WOW.ASX', $114 = 'WPL.ASX', $115 = 'XAUEUR', $116 = 'XAUUSD', $117 = 'XBRUSD', $118 = 'XTIUSD', $119 = '5'
17 69ms 67 0ms 1ms 1ms SELECT timegranularity FROM brokersymbollist bsl INNER JOIN symbols s ON bsl.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss on s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmapping bdfi ON bdfi.brokerid = $1 AND dss.datafeedinstrumentid = bdfi.datafeedinstrumentid WHERE s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND s.symbol ILIKE $2 AND bsl.brokerid = $3 AND timegranularity >= 15 ORDER BY timegranularity LIMIT 1;Times Reported Time consuming bind #17
Day Hour Count Duration Avg duration 06 67 69ms 1ms -
SELECT timegranularity FROM brokersymbollist bsl INNER JOIN symbols s ON bsl.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss on s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmapping bdfi ON bdfi.brokerid = $1 AND dss.datafeedinstrumentid = bdfi.datafeedinstrumentid WHERE s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND s.symbol ILIKE $2 AND bsl.brokerid = $3 AND timegranularity >= 15 ORDER BY timegranularity LIMIT 1;
Date: 2026-01-23 06:15:57 Duration: 1ms Database: postgres parameters: $1 = '558', $2 = 'AUDCAD', $3 = '558'
-
SELECT timegranularity FROM brokersymbollist bsl INNER JOIN symbols s ON bsl.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss on s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmapping bdfi ON bdfi.brokerid = $1 AND dss.datafeedinstrumentid = bdfi.datafeedinstrumentid WHERE s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND s.symbol ILIKE $2 AND bsl.brokerid = $3 AND timegranularity >= 15 ORDER BY timegranularity LIMIT 1;
Date: 2026-01-23 06:28:47 Duration: 1ms Database: postgres parameters: $1 = '489', $2 = 'XAUUSD', $3 = '489'
-
SELECT timegranularity FROM brokersymbollist bsl INNER JOIN symbols s ON bsl.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss on s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmapping bdfi ON bdfi.brokerid = $1 AND dss.datafeedinstrumentid = bdfi.datafeedinstrumentid WHERE s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND s.symbol ILIKE $2 AND bsl.brokerid = $3 AND timegranularity >= 15 ORDER BY timegranularity LIMIT 1;
Date: 2026-01-23 06:17:52 Duration: 1ms Database: postgres parameters: $1 = '632', $2 = 'EURUSD', $3 = '632'
18 49ms 11 3ms 6ms 4ms SELECT DISTINCT ON (basegroupname, symbol) ;Times Reported Time consuming bind #18
Day Hour Count Duration Avg duration 06 11 49ms 4ms -
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2026-01-23 06:16:00 Duration: 6ms Database: postgres parameters: $1 = '627', $2 = '627'
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2026-01-23 06:42:28 Duration: 5ms Database: postgres parameters: $1 = '538', $2 = '538'
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2026-01-23 06:41:12 Duration: 5ms Database: postgres parameters: $1 = '627', $2 = '627'
19 32ms 26 0ms 4ms 1ms WITH tr_max AS ( ;Times Reported Time consuming bind #19
Day Hour Count Duration Avg duration 06 26 32ms 1ms -
WITH tr_max AS ( ;
Date: 2026-01-23 06:12:50 Duration: 4ms Database: postgres parameters: $1 = '606715250232663300', $2 = '606715250232663300', $3 = '606715250232663300', $4 = '4', $5 = '4', $6 = '1320', $7 = 't', $8 = '1320'
-
WITH tr_max AS ( ;
Date: 2026-01-23 06:12:51 Duration: 1ms Database: postgres parameters: $1 = '606715250656455300', $2 = '606715250656455300', $3 = '606715250656455300', $4 = '4', $5 = '4', $6 = '1320', $7 = 't', $8 = '1320'
-
WITH tr_max AS ( ;
Date: 2026-01-23 06:12:52 Duration: 1ms Database: postgres parameters: $1 = '606715250667424300', $2 = '606715250667424300', $3 = '606715250667424300', $4 = '5', $5 = '5', $6 = '300', $7 = 't', $8 = '300'
20 22ms 18 0ms 9ms 1ms select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;Times Reported Time consuming bind #20
Day Hour Count Duration Avg duration 06 18 22ms 1ms -
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2026-01-23 06:40:03 Duration: 9ms Database: postgres
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2026-01-23 06:11:00 Duration: 1ms Database: postgres
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2026-01-23 06:21:00 Duration: 0ms Database: postgres
-
Events
Log levels
Key values
- 395,388 Log entries
Events distribution
Key values
- 0 PANIC entries
- 0 FATAL entries
- 40 ERROR entries
- 0 WARNING entries
Most Frequent Errors/Events
Key values
- 34 Max number of times the same event was reported
- 40 Total events found
Rank Times reported Error 1 34 ERROR: function fixcandlegaps(...) is not unique
Times Reported Most Frequent Error / Event #1
Day Hour Count Jan 23 06 34 - ERROR: function fixcandlegaps(unknown, boolean) is not unique at character 8
Hint: Could not choose a best candidate function. You might need to add explicit type casts.
Statement: select fixcandlegaps('GLOBALFXMT5', false);Date: 2026-01-23 06:06:01
2 4 LOG: process ... still waiting for AccessExclusiveLock on relation ... of database ... after ... ms
Times Reported Most Frequent Error / Event #2
Day Hour Count Jan 23 06 4 - LOG: process 7358 still waiting for AccessExclusiveLock on relation 5883477 of database 5881926 after 1000.048 ms
- LOG: process 7358 still waiting for AccessExclusiveLock on relation 5883477 of database 5881926 after 50921.365 ms
- LOG: process 11215 still waiting for AccessExclusiveLock on relation 5894441 of database 5881926 after 1000.057 ms
Detail: Process holding the lock: 7334. Wait queue: 7358.
Statement: TRUNCATE TABLE solr_relevance_old;Date: 2026-01-23 06:05:12
Detail: Process holding the lock: 7334. Wait queue: 7358.
Statement: TRUNCATE TABLE solr_relevance_old;Date: 2026-01-23 06:06:02
Detail: Process holding the lock: 7334. Wait queue: 11215.
Statement: refresh materialized view latest_candle_datetime_per_recengDate: 2026-01-23 06:17:02
3 2 LOG: process ... still waiting for AccessShareLock on relation ... of database ... after ... ms
Times Reported Most Frequent Error / Event #3
Day Hour Count Jan 23 06 2 - LOG: process 11304 still waiting for AccessShareLock on relation 5894441 of database 5881926 after 1000.056 ms at character 77
- LOG: process 11304 still waiting for AccessShareLock on relation 5894441 of database 5881926 after 57598.898 ms at character 77
Detail: Process holding the lock: 7334. Wait queue: 11215, 11304.
Statement: select recognitionengine,to_char(datetimeupdate, 'yyyy-mm-dd HH24:MI') from latest_candle_datetime_per_recengDate: 2026-01-23 06:17:26
Detail: Process holding the lock: 7334. Wait queue: 11215, 11304.
Statement: select recognitionengine,to_char(datetimeupdate, 'yyyy-mm-dd HH24:MI') from latest_candle_datetime_per_recengDate: 2026-01-23 06:18:23