-
Global information
- Generated on Tue Nov 25 16:02:49 2025
- Log file: /home/postgres/pg_data/data/pg_log/postgresql-2025-11-25_170000.log, ..., /home/postgres/pg_data/data/pg_log/postgresql-2025-11-25_174439.log
- Parsed 8,598,416 log entries in 3m48s
- Log start from 2025-11-25 17:00:00 to 2025-11-25 18:00:00
-
Overview
Global Stats
- 198 Number of unique normalized queries
- 444,287 Number of queries
- 3h17m42s Total query duration
- 2025-11-25 17:00:00 First query
- 2025-11-25 18:00:00 Last query
- 3,155 queries/s at 2025-11-25 17:30:04 Query peak
- 3h17m42s Total query duration
- 1m18s Prepare/parse total duration
- 3m58s Bind total duration
- 3h12m24s Execute total duration
- 0 Number of events
- 0 Number of unique normalized events
- 0 Max number of times the same event was reported
- 0 Number of cancellation
- 40 Total number of automatic vacuums
- 57 Total number of automatic analyzes
- 699 Number temporary file
- 160.68 MiB Max size of temporary file
- 7.37 MiB Average size of temporary file
- 27,880 Total number of sessions
- 11 sessions at 2025-11-25 17:43:12 Session peak
- 2d10h7m32s Total duration of sessions
- 7s505ms Average duration of sessions
- 15 Average queries per session
- 425ms Average queries duration per session
- 7s80ms Average idle time per session
- 27,879 Total number of connections
- 116 connections/s at 2025-11-25 17:15:59 Connection peak
- 2 Total number of databases
SQL Traffic
Key values
- 3,155 queries/s Query Peak
- 2025-11-25 17:30:04 Date
SELECT Traffic
Key values
- 3,005 queries/s Query Peak
- 2025-11-25 17:30:04 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 174 queries/s Query Peak
- 2025-11-25 17:45:50 Date
Queries duration
Key values
- 3h17m42s 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) Nov 25 17 444,285 0ms 38s529ms 25ms 5m27s 5m48s 7m6s 18 2 0ms 0ms 0ms 0ms 0ms 0ms Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Nov 25 17 335,846 26 1ms 9s969ms 19s358ms 32s741ms 18 2 0 0ms 0ms 0ms 0ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Nov 25 17 34,675 4,450 16 96 2ms 1s305ms 2s111ms 3s230ms 18 0 0 0 0 0ms 0ms 0ms 0ms Day Hour Prepare Bind Bind/Prepare Percentage of prepare Nov 25 17 164,158 415,039 2.53 42.06% 18 0 2 2.00 0.00% Day Hour Count Average / Second Nov 25 17 27,879 7.74/s 18 0 0.00/s Day Hour Count Average Duration Average idle time Nov 25 17 27,880 7s505ms 7s91ms 18 0 0ms 0ms -
Connections
Established Connections
Key values
- 116 connections Connection Peak
- 2025-11-25 17:15:59 Date
Connections per database
Key values
- acaweb_fx Main Database
- 27,879 connections Total
Connections per user
Key values
- postgres Main User
- 27,879 connections Total
Connections per host
Key values
- 192.168.1.15 Main host with 13772 connections
- 27,879 Total connections
Host Count 127.0.0.1 114 192.168.0.114 8 192.168.0.216 101 192.168.0.74 11,231 192.168.1.145 129 192.168.1.15 13,772 192.168.1.20 180 192.168.1.239 3 192.168.1.90 89 192.168.2.126 63 192.168.2.182 22 192.168.2.82 48 192.168.3.199 36 192.168.4.132 4 192.168.4.142 1,356 192.168.4.150 10 192.168.4.238 16 192.168.4.33 92 192.168.4.86 1 192.168.4.98 330 [local] 274 -
Sessions
Simultaneous sessions
Key values
- 11 sessions Session Peak
- 2025-11-25 17:43:12 Date
Histogram of session times
Key values
- 24,825 0-500ms duration
Sessions per database
Key values
- acaweb_fx Main Database
- 27,880 sessions Total
Sessions per user
Key values
- postgres Main User
- 27,880 sessions Total
Sessions per host
Key values
- 192.168.1.15 Main Host
- 27,880 sessions Total
Host Count Total Duration Average Duration 104.30.164.187 3 4h34m38s 1h31m32s 127.0.0.1 114 13s785ms 120ms 192.168.0.114 8 40m1s 5m 192.168.0.216 101 1m12s 721ms 192.168.0.74 11,230 5h55m42s 1s900ms 192.168.1.145 129 6h4m35s 2m49s 192.168.1.15 13,771 5h29m29s 1s435ms 192.168.1.20 180 14h26m50s 4m48s 192.168.1.239 3 30ms 10ms 192.168.1.90 89 39s713ms 446ms 192.168.2.126 63 7s441ms 118ms 192.168.2.182 22 1m1s 2s793ms 192.168.2.82 48 28s987ms 603ms 192.168.3.199 36 1s321ms 36ms 192.168.4.132 4 78ms 19ms 192.168.4.142 1,356 29m34s 1s308ms 192.168.4.150 10 20h16m50s 2h1m41s 192.168.4.238 16 20s586ms 1s286ms 192.168.4.33 92 1m28s 957ms 192.168.4.86 1 250ms 250ms 192.168.4.98 330 19s679ms 59ms [local] 274 3m56s 862ms Sessions per application
Key values
- PostgreSQL JDBC Driver Main Host
- 27,880 sessions Total
-
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 11,149 buffers Checkpoint Peak
- 2025-11-25 17:05:00 Date
- 210.002 seconds Highest write time
- 0.015 seconds Sync time
Checkpoints Wal files
Key values
- 5 files Wal files usage Peak
- 2025-11-25 17:10:00 Date
Checkpoints distance
Key values
- 165.45 Mo Distance Peak
- 2025-11-25 17:10:00 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Nov 25 17 57,790 2,069.704s 0.059s 2,070.117s 18 0 0s 0s 0s Day Hour Added Removed Recycled Synced files Longest sync Average sync Nov 25 17 0 0 29 2,108 0.014s 0s 18 0 0 0 0 0s 0s Day Hour Count Avg time (sec) Nov 25 17 0 0s 18 0 0s Day Hour Mean distance Mean estimate Nov 25 17 39,023.91 kB 65,156.18 kB 18 0.00 kB 0.00 kB -
Temporary Files
Size of temporary files
Key values
- 183.96 MiB Temp Files size Peak
- 2025-11-25 17:50:08 Date
Number of temporary files
Key values
- 30 per second Temp Files Peak
- 2025-11-25 17:17:16 Date
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Nov 25 17 699 5.03 GiB 7.37 MiB 18 0 0 0 Queries generating the most temporary files (N)
Rank Count Total size Min size Max size Avg size Query 1 165 690.50 MiB 3.07 MiB 4.82 MiB 4.18 MiB with rar_max as ( ;-
WITH rar_max as ( ;
Date: 2025-11-25 17:44:50 Duration: 0ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver
2 44 1.75 GiB 3.48 MiB 160.68 MiB 40.75 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: 2025-11-25 17:10:09 Duration: 6s704ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown]
-
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: 2025-11-25 17:00:09 Duration: 6s364ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown]
-
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: 2025-11-25 17:30:09 Duration: 6s105ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown]
3 16 501.12 MiB 31.32 MiB 31.32 MiB 31.32 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: 2025-11-25 17:18:15 Duration: 2s980ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:11:14 Duration: 2s813ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:01:14 Duration: 2s416ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
4 16 1.04 GiB 66.55 MiB 66.57 MiB 66.57 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: 2025-11-25 17:01:19 Duration: 4s419ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:11:19 Duration: 4s226ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:56:17 Duration: 4s12ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
5 8 865.15 MiB 108.12 MiB 108.16 MiB 108.14 MiB select updateresultsmaterializedview ();-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:02:33 Duration: 10s320ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:32:25 Duration: 7s648ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:47:23 Duration: 6s183ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
6 4 219.33 MiB 54.76 MiB 54.91 MiB 54.83 MiB select updateageforrelevantresults ();-
select updateageforrelevantresults ();
Date: 2025-11-25 17:02:23 Duration: 21s93ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateageforrelevantresults ();
Date: 2025-11-25 17:17:22 Duration: 19s730ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateageforrelevantresults ();
Date: 2025-11-25 17:32:18 Duration: 16s1ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
7 2 11.11 MiB 5.55 MiB 5.55 MiB 5.55 MiB select count(*) from ( select * from patternresultsage pa inner join relevance_autochartist_results a on pa.resultuid = a.resultuid where pa.type = ? and abs(pa.age - a.age) > ? union all select * from patternresultsage pa inner join relevance_fibonacci_results a on pa.resultuid = a.resultuid where pa.type = ? and abs(pa.age - a.age) > ? union all select * from patternresultsage pa inner join relevance_keylevels_results a on pa.resultuid = a.resultuid where pa.type = ? and abs(pa.age - a.age) > ? union all select * from patternresultsage pa inner join relevance_consecutivecandles_results a on pa.resultuid = a.resultuid where pa.type = ? and abs(pa.age - a.age) > ? union all select * from patternresultsage pa inner join relevance_bigmovement_results a on pa.resultuid = a.resultuid where pa.type = ? and abs(pa.age - a.age) > ?) a;-
select count(*) from ( select * from patternresultsage pa inner join relevance_autochartist_results a on pa.resultuid = a.resultuid where pa.type = 0 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_fibonacci_results a on pa.resultuid = a.resultuid where pa.type = 1 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_keylevels_results a on pa.resultuid = a.resultuid where pa.type = 2 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_consecutivecandles_results a on pa.resultuid = a.resultuid where pa.type = 4 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_bigmovement_results a on pa.resultuid = a.resultuid where pa.type = 5 and abs(pa.age - a.age) > 1) a;
Date: 2025-11-25 17:25:02 Duration: 839ms Database: acaweb_fx User: postgres Remote: 192.168.2.126 Application: [unknown]
-
select count(*) from ( select * from patternresultsage pa inner join relevance_autochartist_results a on pa.resultuid = a.resultuid where pa.type = 0 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_fibonacci_results a on pa.resultuid = a.resultuid where pa.type = 1 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_keylevels_results a on pa.resultuid = a.resultuid where pa.type = 2 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_consecutivecandles_results a on pa.resultuid = a.resultuid where pa.type = 4 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_bigmovement_results a on pa.resultuid = a.resultuid where pa.type = 5 and abs(pa.age - a.age) > 1) a;
Date: 2025-11-25 17:25:02 Duration: 836ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown]
-
select count(*) from ( select * from patternresultsage pa inner join relevance_autochartist_results a on pa.resultuid = a.resultuid where pa.type = 0 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_fibonacci_results a on pa.resultuid = a.resultuid where pa.type = 1 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_keylevels_results a on pa.resultuid = a.resultuid where pa.type = 2 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_consecutivecandles_results a on pa.resultuid = a.resultuid where pa.type = 4 and abs(pa.age - a.age) > 1 union all select * from patternresultsage pa inner join relevance_bigmovement_results a on pa.resultuid = a.resultuid where pa.type = 5 and abs(pa.age - a.age) > 1) a;
Date: 2025-11-25 17:25:01 Duration: 0ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown]
8 1 4.81 MiB 4.81 MiB 4.81 MiB 4.81 MiB select resultuid from relevance_fibonacci_results order by resultuid desc limit ?), fr as ( select a.*, rr.age, rr.relevant from fibonacci_results a left outer join relevance_fibonacci_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) end), all_results as ( select fr.resultuid as resultuid, fr.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, fr.pattern as pattern_name, fr.timed as timed, fr.patternendtime as identified, dtt.timezone as timezone, fr.patternlengthbars as length, g.basegroupname, newlevels.filtered, case when fr.age is not null then fr.age when fr.resultuid <= rm.resultuid then ? else ? end as age, case when fr.relevant is not null then fr.relevant when fr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from fr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = fr.symbolid inner join symbols s on fr.symbolid = s.symbolid and s.nonliquid = ? inner join symbolgroup sg on fr.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 downloadersymbolsettings dss on fr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left join lateral calc_fib_signal_filter (fr.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 fr.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (fr.simulation = ? or fr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or fr.pattern in (...)) and (? = ? or fr.patternlengthbars <= ?) and (? = ? or (? = ? and fr.timed > cast(? as timestamp)) or (? = ? and fr.timed < cast(? as timestamp)))), 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_fibonacci_results ORDER BY resultuid DESC LIMIT 1), fr AS ( SELECT a.*, rr.age, rr.relevant from fibonacci_results a LEFT OUTER JOIN relevance_fibonacci_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = $1 THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) END), all_results AS ( SELECT fr.resultuid AS resultuid, fr.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, fr.pattern AS pattern_name, fr.timed AS timed, fr.patternendtime AS identified, dtt.timezone AS timezone, fr.patternlengthbars AS length, g.basegroupname, newLevels.filtered, CASE WHEN fr.age IS NOT NULL THEN fr.age WHEN fr.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN fr.relevant IS NOT NULL THEN fr.relevant WHEN fr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM fr INNER JOIN brokersymbollist bsl ON bsl.brokerid = $2 AND bsl.symbolid = fr.symbolid INNER JOIN symbols s ON fr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN symbolgroup sg on fr.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 downloadersymbolsettings dss ON fr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT JOIN LATERAL calc_fib_signal_filter (fr.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 = 'OUTBOUND' WHERE fr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (fr.simulation = 0 OR fr.simulation IS NULL) AND ($3 = 0 OR s.timegranularity in ($4, $5, $6, $7, $8, $9, $10)) AND ($11 = 0 OR s.exchange in ($12)) AND ($13 = 0 OR coalesce(bim.code, s.symbol) in ($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)) AND ($227 = 0 OR fr.pattern in ($228)) AND ($229 = 0 OR fr.patternlengthbars <= $230) AND ($231 = 0 OR ($232 = 1 AND fr.timed > cast('1970-01-01' as timestamp)) OR ($233 = 2 AND fr.timed < cast('1970-01-01' as timestamp)))), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = $234 OR relevant = 1) AND ($235 = 0 OR age <= $236) ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:12:54 Duration: 0ms Database: acaweb_fx User: postgres Remote: 192.168.1.20 Application: PostgreSQL JDBC Driver
Queries generating the largest temporary files
Rank Size Query 1 160.68 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: 2025-11-25 17:10:06 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.90 - Application: [unknown] ]
2 136.48 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: 2025-11-25 17:30:05 ]
3 122.05 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: 2025-11-25 17:50:04 ]
4 108.16 MiB select updateresultsmaterializedview ();[ Date: 2025-11-25 17:47:18 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
5 108.16 MiB select updateresultsmaterializedview ();[ Date: 2025-11-25 17:32:18 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
6 108.16 MiB select updateresultsmaterializedview ();[ Date: 2025-11-25 17:50:35 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
7 108.15 MiB select updateresultsmaterializedview ();[ Date: 2025-11-25 17:35:33 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
8 108.14 MiB select updateresultsmaterializedview ();[ Date: 2025-11-25 17:17:23 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
9 108.13 MiB select updateresultsmaterializedview ();[ Date: 2025-11-25 17:20:33 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
10 108.13 MiB select updateresultsmaterializedview ();[ Date: 2025-11-25 17:02:24 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
11 108.12 MiB select updateresultsmaterializedview ();[ Date: 2025-11-25 17:05:32 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
12 107.48 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: 2025-11-25 17:00:05 ]
13 103.52 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: 2025-11-25 17:40:04 ]
14 93.50 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: 2025-11-25 17:50:05 ]
15 86.21 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: 2025-11-25 17:40:07 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.90 - Application: [unknown] ]
16 85.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: 2025-11-25 17:20:07 ]
17 72.51 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: 2025-11-25 17:20:07 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.90 - Application: [unknown] ]
18 71.41 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: 2025-11-25 17:30:08 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.90 - Application: [unknown] ]
19 70.93 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: 2025-11-25 17:00:08 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.90 - Application: [unknown] ]
20 66.57 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: 2025-11-25 17:11:19 - Database: acaweb_fx - User: postgres - Remote: [local] - Application: psql ]
-
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 (16) Main table analyzed (database acaweb_fx)
- 57 analyzes Total
Table Number of analyzes acaweb_fx.public.solr_relevance_old 16 acaweb_fx.pg_catalog.pg_attribute 6 acaweb_fx.public.datafeeds_latestrun 4 acaweb_fx.public.relevance_keylevels_results 4 acaweb_fx.pg_catalog.pg_class 4 acaweb_fx.public.relevance_autochartist_results 4 acaweb_fx.public.relevance_fibonacci_results 3 acaweb_fx.pg_catalog.pg_type 3 acaweb_fx.pg_catalog.pg_index 2 acaweb_fx.public.autochartist_symbolupdates 2 acaweb_fx.pg_catalog.pg_depend 2 acaweb_fx.public.latest_t15_candle_view 2 socialmedia.public.processes 1 acaweb_fx.public.latest_candle_datetime_per_receng 1 acaweb_fx.public.relevance_consecutivecandles_results 1 acaweb_fx.public.symbollatestupdatetime 1 acaweb_fx.public.whatshot_probability 1 Total 57 Vacuums per table
Key values
- public.solr_relevance_old (18) Main table vacuumed on database acaweb_fx
- 40 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 18 17 14,348 0 155 0 62 10,111 1,424 7,020,332 acaweb_fx.public.datafeeds_latestrun 5 0 601 0 19 0 0 75 19 83,006 acaweb_fx.public.relevance_autochartist_results 3 3 10,527 0 440 8 709 2,017 394 996,562 acaweb_fx.pg_toast.pg_toast_2619 2 2 278 0 45 0 0 206 56 253,065 acaweb_fx.public.latest_t15_candle_view 2 2 132 0 3 0 0 12 5 20,070 acaweb_fx.public.relevance_keylevels_results 2 2 8,629 0 398 3 94 2,790 330 869,149 acaweb_fx.public.relevance_fibonacci_results 2 2 2,649 0 106 2 74 478 162 469,140 acaweb_fx.pg_catalog.pg_index 1 1 88 0 11 0 0 28 14 83,922 acaweb_fx.pg_catalog.pg_type 1 1 127 0 23 0 0 53 28 145,638 acaweb_fx.public.autochartist_symbolupdates 1 1 27,190 0 3,161 0 37,042 8,637 7,207 3,081,020 acaweb_fx.pg_catalog.pg_statistic 1 1 1,004 0 185 0 582 468 161 601,359 acaweb_fx.pg_catalog.pg_attribute 1 1 779 0 188 0 67 379 146 879,953 acaweb_fx.pg_catalog.pg_class 1 1 471 0 63 0 0 147 59 291,439 Total 40 34 66,823 47,021 4,797 13 38,630 25,401 10,005 14,794,655 Tuples removed per table
Key values
- public.solr_relevance_old (83782) Main table with removed tuples on database acaweb_fx
- 97071 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain acaweb_fx.public.solr_relevance_old 18 17 83,782 117,047 10,137 0 3,701 acaweb_fx.public.autochartist_symbolupdates 1 1 5,372 47,656 131 0 40,691 acaweb_fx.public.relevance_keylevels_results 2 2 3,860 24,665 0 0 558 acaweb_fx.pg_catalog.pg_attribute 1 1 1,279 10,492 0 0 252 acaweb_fx.public.relevance_autochartist_results 3 3 1,110 26,124 1,395 0 1,140 acaweb_fx.pg_catalog.pg_statistic 1 1 567 3,700 0 0 1,194 acaweb_fx.public.relevance_fibonacci_results 2 2 320 2,797 0 0 204 acaweb_fx.public.datafeeds_latestrun 5 0 279 70 0 0 80 acaweb_fx.pg_catalog.pg_class 1 1 154 1,691 54 0 150 acaweb_fx.pg_toast.pg_toast_2619 2 2 128 346 5 0 100 acaweb_fx.public.latest_t15_candle_view 2 2 121 28 0 0 2 acaweb_fx.pg_catalog.pg_type 1 1 80 1,422 0 0 38 acaweb_fx.pg_catalog.pg_index 1 1 19 813 0 0 22 Total 40 34 97,071 236,851 11,722 0 48,132 Pages removed per table
Key values
- unknown (0) Main table with removed pages on database unknown
- 0 pages Total removed
Pages removed per tables
NO DATASET
Table Number of vacuums Index scans Tuples removed Pages removed acaweb_fx.pg_catalog.pg_index 1 1 19 0 acaweb_fx.pg_toast.pg_toast_2619 2 2 128 0 acaweb_fx.pg_catalog.pg_type 1 1 80 0 acaweb_fx.public.datafeeds_latestrun 5 0 279 0 acaweb_fx.public.autochartist_symbolupdates 1 1 5372 0 acaweb_fx.pg_catalog.pg_statistic 1 1 567 0 acaweb_fx.pg_catalog.pg_attribute 1 1 1279 0 acaweb_fx.public.latest_t15_candle_view 2 2 121 0 acaweb_fx.public.relevance_keylevels_results 2 2 3860 0 acaweb_fx.pg_catalog.pg_class 1 1 154 0 acaweb_fx.public.relevance_autochartist_results 3 3 1110 0 acaweb_fx.public.solr_relevance_old 18 17 83782 0 acaweb_fx.public.relevance_fibonacci_results 2 2 320 0 Total 40 34 97,071 0 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Nov 25 17 40 57 18 0 0 - 0 sec Highest CPU-cost vacuum
-
Locks
Locks by types
Key values
- unknown Main Lock Type
- 0 locks Total
Most frequent waiting queries (N)
Rank Count Total time Min time Max time Avg duration Query NO DATASET
Queries that waited the most
Rank Wait time Query NO DATASET
-
Queries
Queries by type
Key values
- 335,848 Total read queries
- 54,477 Total write queries
Queries by database
Key values
- acaweb_fx Main database
- 435,101 Requests
- 3h12m14s (acaweb_fx)
- Main time consuming database
Database Request type Count Duration acaweb_fx Total 435,101 3h12m14s copy from 96 6s214ms copy to 26 12s106ms cte 14,468 3h2m44s ddl 16 546ms delete 16 27ms insert 26,099 30s705ms others 53,928 12s192ms select 335,404 7m55s tcl 662 187ms update 4,386 32s872ms socialmedia Total 9,186 10s578ms insert 8,576 9s799ms others 34 0ms select 444 648ms tcl 68 1ms update 64 128ms Queries by user
Key values
- postgres Main user
- 444,287 Requests
User Request type Count Duration postgres Total 444,287 3h12m24s copy from 96 6s214ms copy to 26 12s106ms cte 14,468 3h2m44s ddl 16 546ms delete 16 27ms insert 34,675 40s504ms others 53,962 12s193ms select 335,848 7m55s tcl 730 189ms update 4,450 33s Duration by user
Key values
- 3h12m24s (postgres) Main time consuming user
User Request type Count Duration postgres Total 444,287 3h12m24s copy from 96 6s214ms copy to 26 12s106ms cte 14,468 3h2m44s ddl 16 546ms delete 16 27ms insert 34,675 40s504ms others 53,962 12s193ms select 335,848 7m55s tcl 730 189ms update 4,450 33s Queries by host
Key values
- 192.168.0.74 Main host
- 179,944 Requests
- 54m46s (192.168.0.74)
- Main time consuming host
Host Request type Count Duration 127.0.0.1 Total 16,915 59s811ms copy to 26 12s106ms cte 24 342ms insert 12,503 17s957ms select 507 26s297ms update 3,855 3s106ms 182.165.1.42 Total 120 9m24s cte 60 9m24s select 60 0ms 192.168.0.114 Total 175 344ms others 35 0ms select 70 342ms tcl 70 2ms 192.168.0.216 Total 404 339ms others 202 20ms select 194 221ms update 8 97ms 192.168.0.236 Total 10 3ms cte 1 0ms select 9 3ms 192.168.0.239 Total 521 1s22ms select 521 1s22ms 192.168.0.42 Total 1,401 1s421ms insert 474 48ms select 927 1s373ms 192.168.0.74 Total 179,944 54m46s cte 4,797 52m35s others 22,462 259ms select 152,685 2m11s 192.168.1.135 Total 72 216ms cte 4 95ms select 68 120ms 192.168.1.145 Total 23,915 34m36s cte 2,312 34m13s others 258 2ms select 21,345 22s957ms 192.168.1.15 Total 162,720 52m54s cte 4,807 51m8s others 27,544 324ms select 130,369 1m45s 192.168.1.20 Total 25,879 33m58s cte 2,344 33m32s others 360 4ms select 23,175 26s 192.168.1.201 Total 1,767 2s585ms select 1,767 2s585ms 192.168.1.210 Total 20 2ms select 20 2ms 192.168.1.239 Total 12 7ms others 6 0ms select 6 6ms 192.168.1.90 Total 241 36s938ms cte 6 35s846ms others 80 0ms select 155 1s91ms 192.168.2.126 Total 81 912ms others 18 0ms select 63 912ms 192.168.2.182 Total 88 561ms others 44 4ms select 22 21ms update 22 535ms 192.168.2.82 Total 1,193 2s490ms insert 828 1s580ms others 96 10ms select 164 104ms update 105 794ms 192.168.3.199 Total 144 210ms others 72 8ms select 60 64ms update 12 137ms 192.168.4.132 Total 12 1ms others 8 0ms select 4 0ms 192.168.4.142 Total 18,230 18s34ms insert 12,294 11s118ms others 2,712 32ms select 3,224 6s884ms 192.168.4.150 Total 22 2s417ms others 21 0ms select 1 2s416ms 192.168.4.238 Total 48 19s430ms cte 16 19s430ms others 32 0ms 192.168.4.33 Total 9,016 10s274ms insert 8,576 9s799ms select 376 346ms update 64 128ms 192.168.4.86 Total 3 115ms cte 1 115ms others 2 0ms 192.168.4.98 Total 996 12s95ms others 6 11s200ms select 6 29ms tcl 660 187ms update 324 677ms [local] Total 338 3m55s copy from 96 6s214ms cte 96 54s347ms ddl 16 546ms delete 16 27ms others 4 322ms select 50 2m26s update 60 27s522ms Queries by application
Key values
- PostgreSQL JDBC Driver Main application
- 387,999 Requests
- 2h57m1s (PostgreSQL JDBC Driver)
- Main time consuming application
Application Request type Count Duration PostgreSQL JDBC Driver Total 387,999 2h57m1s cte 14,281 2h51m49s insert 12,768 11s167ms others 26,736 363ms select 334,214 5m [unknown] Total 55,836 11m15s cte 67 9m59s insert 21,907 29s337ms others 27,222 11s507ms select 1,532 29s57ms tcl 730 189ms update 4,378 5s449ms psql Total 452 4m8s copy from 96 6s214ms copy to 26 12s106ms cte 120 54s690ms ddl 16 546ms delete 16 27ms others 4 322ms select 102 2m26s update 72 27s550ms Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2025-11-25 17:59:56 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 286,003 0-1ms duration
Slowest individual queries
Rank Duration Query 1 38s529ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:02:58 - Database: acaweb_fx - User: postgres - Remote: 192.168.0.74 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
2 37s244ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:02:58 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.15 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
3 30s510ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:22:40 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.15 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
4 29s27ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '627' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('0' = 0 OR coalesce(bim.code, s.symbol) in ('')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('0' = 0 OR ar.patternlengthbars <= '0') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:03:41 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.15 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
5 28s479ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '627' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('213' = 0 OR coalesce(bim.code, s.symbol) in ('#ADBE', '#ALVG', '#AMZN', '#APPL', '#BA', '#BABA', '#BAYGn', '#BMWG', '#BNPP', '#CAT', '#CBKG', '#DAIGn', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#META', '#MSFT', '#NFLX', '#TSLA', '#VOWG', '#WMT', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS_200', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CL_BRENT', 'DASHUSD', 'EOSUSD', 'ESP_35', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'EUR_50', 'FRA_40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'GBR_100', 'HKDJPY', 'HKG_50', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NAS100', 'NEOUSD', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'OMGUSD', 'SPX500', 'TRXUSD', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'USOIL', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XMRUSD', 'XPTUSD', 'XRPUSD', 'ZARJPY', 'ZECUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'HKDJPY', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'ZARJPY', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'DASHUSD', 'EOSUSD', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NEOUSD', 'OMGUSD', 'TRXUSD', 'XMRUSD', 'XRPUSD', 'ZECUSD', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XPTUSD', 'CL_BRENT', 'USOIL', '#ALVG', '#BAYGn', '#BMWG', '#BNPP', '#CBKG', '#DAIGn', '#VOWG', 'AUS_200', 'ESP_35', 'EUR_50', 'FRA_40', 'GBR_100', 'HKG_50', 'NAS100', 'SPX500', 'US30', '#ADBE', '#AMZN', '#APPL', '#BA', '#BABA', '#CAT', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#MSFT', '#NFLX', '#TSLA', '#WMT', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('500' = 0 OR ar.patternlengthbars <= '500') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:03:34 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.145 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
6 28s385ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:22:36 - Database: acaweb_fx - User: postgres - Remote: 192.168.0.74 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
7 27s742ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '627' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('213' = 0 OR coalesce(bim.code, s.symbol) in ('#ADBE', '#ALVG', '#AMZN', '#APPL', '#BA', '#BABA', '#BAYGn', '#BMWG', '#BNPP', '#CAT', '#CBKG', '#DAIGn', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#META', '#MSFT', '#NFLX', '#TSLA', '#VOWG', '#WMT', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS_200', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CL_BRENT', 'DASHUSD', 'EOSUSD', 'ESP_35', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'EUR_50', 'FRA_40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'GBR_100', 'HKDJPY', 'HKG_50', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NAS100', 'NEOUSD', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'OMGUSD', 'SPX500', 'TRXUSD', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'USOIL', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XMRUSD', 'XPTUSD', 'XRPUSD', 'ZARJPY', 'ZECUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'HKDJPY', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'ZARJPY', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'DASHUSD', 'EOSUSD', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NEOUSD', 'OMGUSD', 'TRXUSD', 'XMRUSD', 'XRPUSD', 'ZECUSD', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XPTUSD', 'CL_BRENT', 'USOIL', '#ALVG', '#BAYGn', '#BMWG', '#BNPP', '#CBKG', '#DAIGn', '#VOWG', 'AUS_200', 'ESP_35', 'EUR_50', 'FRA_40', 'GBR_100', 'HKG_50', 'NAS100', 'SPX500', 'US30', '#ADBE', '#AMZN', '#APPL', '#BA', '#BABA', '#CAT', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#MSFT', '#NFLX', '#TSLA', '#WMT', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('500' = 0 OR ar.patternlengthbars <= '500') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:03:35 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.20 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
8 27s279ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:17:45 - Database: acaweb_fx - User: postgres - Remote: 192.168.0.74 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
9 27s61ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '627' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('213' = 0 OR coalesce(bim.code, s.symbol) in ('#ADBE', '#ALVG', '#AMZN', '#APPL', '#BA', '#BABA', '#BAYGn', '#BMWG', '#BNPP', '#CAT', '#CBKG', '#DAIGn', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#META', '#MSFT', '#NFLX', '#TSLA', '#VOWG', '#WMT', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS_200', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CL_BRENT', 'DASHUSD', 'EOSUSD', 'ESP_35', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'EUR_50', 'FRA_40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'GBR_100', 'HKDJPY', 'HKG_50', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NAS100', 'NEOUSD', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'OMGUSD', 'SPX500', 'TRXUSD', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'USOIL', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XMRUSD', 'XPTUSD', 'XRPUSD', 'ZARJPY', 'ZECUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'HKDJPY', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'ZARJPY', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'DASHUSD', 'EOSUSD', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NEOUSD', 'OMGUSD', 'TRXUSD', 'XMRUSD', 'XRPUSD', 'ZECUSD', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XPTUSD', 'CL_BRENT', 'USOIL', '#ALVG', '#BAYGn', '#BMWG', '#BNPP', '#CBKG', '#DAIGn', '#VOWG', 'AUS_200', 'ESP_35', 'EUR_50', 'FRA_40', 'GBR_100', 'HKG_50', 'NAS100', 'SPX500', 'US30', '#ADBE', '#AMZN', '#APPL', '#BA', '#BABA', '#CAT', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#MSFT', '#NFLX', '#TSLA', '#WMT', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('500' = 0 OR ar.patternlengthbars <= '500') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:58:00 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.20 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
10 26s35ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '627' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('0' = 0 OR coalesce(bim.code, s.symbol) in ('')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('0' = 0 OR ar.patternlengthbars <= '0') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:18:15 - Database: acaweb_fx - User: postgres - Remote: 192.168.0.74 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
11 25s752ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:17:47 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.15 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
12 25s733ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '627' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('213' = 0 OR coalesce(bim.code, s.symbol) in ('#ADBE', '#ALVG', '#AMZN', '#APPL', '#BA', '#BABA', '#BAYGn', '#BMWG', '#BNPP', '#CAT', '#CBKG', '#DAIGn', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#META', '#MSFT', '#NFLX', '#TSLA', '#VOWG', '#WMT', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS_200', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CL_BRENT', 'DASHUSD', 'EOSUSD', 'ESP_35', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'EUR_50', 'FRA_40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'GBR_100', 'HKDJPY', 'HKG_50', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NAS100', 'NEOUSD', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'OMGUSD', 'SPX500', 'TRXUSD', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'USOIL', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XMRUSD', 'XPTUSD', 'XRPUSD', 'ZARJPY', 'ZECUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'HKDJPY', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'ZARJPY', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'DASHUSD', 'EOSUSD', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NEOUSD', 'OMGUSD', 'TRXUSD', 'XMRUSD', 'XRPUSD', 'ZECUSD', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XPTUSD', 'CL_BRENT', 'USOIL', '#ALVG', '#BAYGn', '#BMWG', '#BNPP', '#CBKG', '#DAIGn', '#VOWG', 'AUS_200', 'ESP_35', 'EUR_50', 'FRA_40', 'GBR_100', 'HKG_50', 'NAS100', 'SPX500', 'US30', '#ADBE', '#AMZN', '#APPL', '#BA', '#BABA', '#CAT', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#MSFT', '#NFLX', '#TSLA', '#WMT', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('500' = 0 OR ar.patternlengthbars <= '500') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:42:45 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.145 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
13 25s494ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('400' = 0 OR ar.patternlengthbars <= '400') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:05:55 - Database: acaweb_fx - User: postgres - Remote: 182.165.1.42 - Application: [unknown] - Bind query: yes ]
14 25s296ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:42:45 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.15 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
15 25s60ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:57:47 - Database: acaweb_fx - User: postgres - Remote: 192.168.0.74 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
16 24s600ms WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ), 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 = 't' 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 11 ELSE 0 END as age, CASE WHEN kr.relevant IS NOT NULL THEN kr.relevant WHEN kr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM kr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = kr.symbolid INNER JOIN symbols s ON bsl.symbolid = s.symbolid AND s.nonliquid = 0 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 = 3 INNER JOIN rar_max rm ON 1 = 1 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 = 'OUTBOUND' WHERE kr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (kr.simulation = 0 OR kr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR p.patternname in ('')) AND ('2' = 0 OR kr.patternclassid in ('1', '2')) AND ('400' = 0 OR kr.patternlengthbars <= '400') AND kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC LIMIT 200;[ Date: 2025-11-25 17:16:22 - Database: acaweb_fx - User: postgres - Remote: 182.165.1.42 - Application: [unknown] - Bind query: yes ]
17 24s572ms WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ), 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 = 't' 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 11 ELSE 0 END as age, CASE WHEN kr.relevant IS NOT NULL THEN kr.relevant WHEN kr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM kr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = kr.symbolid INNER JOIN symbols s ON bsl.symbolid = s.symbolid AND s.nonliquid = 0 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 = 3 INNER JOIN rar_max rm ON 1 = 1 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 = 'OUTBOUND' WHERE kr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (kr.simulation = 0 OR kr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR p.patternname in ('')) AND ('2' = 0 OR kr.patternclassid in ('1', '2')) AND ('400' = 0 OR kr.patternlengthbars <= '400') AND kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC LIMIT 200;[ Date: 2025-11-25 17:01:21 - Database: acaweb_fx - User: postgres - Remote: 182.165.1.42 - Application: [unknown] - Bind query: yes ]
18 24s389ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '529' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('183' = 0 OR coalesce(bim.code, s.symbol) in ('AUDUSD', 'EURUSD', 'GBPUSD', 'USDCAD', 'USDCHF', 'USDJPY', 'XAGAUD', 'XAGEUR', 'XAGUSD', 'XAUAUD', 'XAUCHF', 'XAUEUR', 'XAUGBP', 'XAUJPY', 'XAUUSD', 'XPDUSD', 'XPTUSD', 'AUS200', 'CA60', 'CHINAH', 'CN50', 'EUSTX50', 'FRA40', 'GER40', 'GERTEC30', 'HK50', 'JPN225', 'MidDE50', 'NAS100', 'NETH25', 'NOR25', 'SA40', 'SCI25', 'SPA35', 'SWI20', 'UK100', 'US2000', 'US30', 'US500', 'VIX', 'AUDCAD', 'AUDCHF', 'AUDNZD', 'AUDSGD', 'EURAUD', 'EURCHF', 'EURGBP', 'GBPAUD', 'GBPCHF', 'NZDUSD', 'CHFSGD', 'EURCZK', 'EURHUF', 'EURMXN', 'EURNOK', 'EURPLN', 'EURSEK', 'EURSGD', 'EURTRY', 'EURZAR', 'GBPMXN', 'GBPNOK', 'GBPSEK', 'GBPSGD', 'GBPTRY', 'NOKJPY', 'NOKSEK', 'NZDCAD', 'NZDCHF', 'SEKJPY', 'SGDJPY', 'USDCNH', 'USDCZK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTHB', 'USDTRY', 'USDZAR', 'ZARJPY', 'ADAUSD', 'AVAXUSD', 'BCHUSD', 'BNBUSD', 'BTCUSD', 'Crypto10', 'Crypto20', 'Crypto30', 'DOGEUSD', 'DOTUSD', 'EOSUSD', 'ETHUSD', 'LINKUSD', 'LTCUSD', 'MATICUSD', 'SOLUSD', 'UNIUSD', 'XLMUSD', 'XRPUSD', 'XTZUSD', 'EURX', 'JPYX', 'USDX', 'Gasoline', 'NatGas', 'SpotBrent', 'SpotCrude', 'AAPL.US', 'ABNB.US', 'AMD.US', 'AMZN.US', 'AXP.US', 'BA.US', 'BABA.US', 'BIDU.US', 'BYND.US', 'C.US', 'COIN.US', 'CRM.US', 'DIS.US', 'EA.US', 'GOOG.US', 'GS.US', 'IBM.US', 'JPM.US', 'LMT.US', 'MA.US', 'MCD.US', 'META.US', 'MRNA.US', 'MSFT.US', 'NFLX.US', 'NKE.US', 'NVDA.US', 'ORCL.US', 'PFE.US', 'PG.US', 'PLTR.US', 'PTON.US', 'PYPL.US', 'QCOM.US', 'SNAP.US', 'SPCE.US', 'SPY.US', 'T.US', 'TMUS.US', 'TSLA.US', 'UBER.US', 'V.US', 'WMT.US', 'ZM.US', 'Cattle', 'Cocoa', 'Coffee', 'Corn', 'Cotton', 'LDSugar', 'LeanHogs', 'LondonSugar', 'Lumber', 'OJ', 'Oats', 'RghRice', 'SoyMeal', 'SoyOil', 'Soybeans', 'Sugar', 'Wheat', 'AUDJPY', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURCAD', 'EURJPY', 'EURNZD', 'GBPCAD', 'GBPJPY', 'GBPNZD', 'NZDJPY')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('500' = 0 OR ar.patternlengthbars <= '500') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:01:13 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.20 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
19 24s60ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '529' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('183' = 0 OR coalesce(bim.code, s.symbol) in ('AUDUSD', 'EURUSD', 'GBPUSD', 'USDCAD', 'USDCHF', 'USDJPY', 'XAGAUD', 'XAGEUR', 'XAGUSD', 'XAUAUD', 'XAUCHF', 'XAUEUR', 'XAUGBP', 'XAUJPY', 'XAUUSD', 'XPDUSD', 'XPTUSD', 'AUS200', 'CA60', 'CHINAH', 'CN50', 'EUSTX50', 'FRA40', 'GER40', 'GERTEC30', 'HK50', 'JPN225', 'MidDE50', 'NAS100', 'NETH25', 'NOR25', 'SA40', 'SCI25', 'SPA35', 'SWI20', 'UK100', 'US2000', 'US30', 'US500', 'VIX', 'AUDCAD', 'AUDCHF', 'AUDNZD', 'AUDSGD', 'EURAUD', 'EURCHF', 'EURGBP', 'GBPAUD', 'GBPCHF', 'NZDUSD', 'CHFSGD', 'EURCZK', 'EURHUF', 'EURMXN', 'EURNOK', 'EURPLN', 'EURSEK', 'EURSGD', 'EURTRY', 'EURZAR', 'GBPMXN', 'GBPNOK', 'GBPSEK', 'GBPSGD', 'GBPTRY', 'NOKJPY', 'NOKSEK', 'NZDCAD', 'NZDCHF', 'SEKJPY', 'SGDJPY', 'USDCNH', 'USDCZK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTHB', 'USDTRY', 'USDZAR', 'ZARJPY', 'ADAUSD', 'AVAXUSD', 'BCHUSD', 'BNBUSD', 'BTCUSD', 'Crypto10', 'Crypto20', 'Crypto30', 'DOGEUSD', 'DOTUSD', 'EOSUSD', 'ETHUSD', 'LINKUSD', 'LTCUSD', 'MATICUSD', 'SOLUSD', 'UNIUSD', 'XLMUSD', 'XRPUSD', 'XTZUSD', 'EURX', 'JPYX', 'USDX', 'Gasoline', 'NatGas', 'SpotBrent', 'SpotCrude', 'AAPL.US', 'ABNB.US', 'AMD.US', 'AMZN.US', 'AXP.US', 'BA.US', 'BABA.US', 'BIDU.US', 'BYND.US', 'C.US', 'COIN.US', 'CRM.US', 'DIS.US', 'EA.US', 'GOOG.US', 'GS.US', 'IBM.US', 'JPM.US', 'LMT.US', 'MA.US', 'MCD.US', 'META.US', 'MRNA.US', 'MSFT.US', 'NFLX.US', 'NKE.US', 'NVDA.US', 'ORCL.US', 'PFE.US', 'PG.US', 'PLTR.US', 'PTON.US', 'PYPL.US', 'QCOM.US', 'SNAP.US', 'SPCE.US', 'SPY.US', 'T.US', 'TMUS.US', 'TSLA.US', 'UBER.US', 'V.US', 'WMT.US', 'ZM.US', 'Cattle', 'Cocoa', 'Coffee', 'Corn', 'Cotton', 'LDSugar', 'LeanHogs', 'LondonSugar', 'Lumber', 'OJ', 'Oats', 'RghRice', 'SoyMeal', 'SoyOil', 'Soybeans', 'Sugar', 'Wheat', 'AUDJPY', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURCAD', 'EURJPY', 'EURNZD', 'GBPCAD', 'GBPJPY', 'GBPNZD', 'NZDJPY')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('500' = 0 OR ar.patternlengthbars <= '500') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:11:07 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.145 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
20 23s985ms WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;[ Date: 2025-11-25 17:32:32 - Database: acaweb_fx - User: postgres - Remote: 192.168.1.15 - Application: PostgreSQL JDBC Driver - Bind query: yes ]
Time consuming queries
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 1h22m21s 526 427ms 38s529ms 9s394ms with rar_max as ( select resultuid from relevance_autochartist_results order by resultuid desc limit ? ), ar as ( select a.*, rr.age, rr.relevant from autochartist_results a left outer join relevance_autochartist_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_autochartist_results) end ), all_results as ( select ar.resultuid as resultuid, ar.direction as direction, ar.predictiontimeto as predictiontimeto, ar.predictionpricefrom as predictionpricefrom, ar.predictionpriceto as predictionpriceto, cp.pip as pip, 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, ar.pattern as pattern_name, ar.breakout as breakout, ar.patternendtime as identified, dtt.timezone as timezone, ar.patternlengthbars as length, g.basegroupname, newlevels.profit, newlevels.stop, newlevels.filtered, case when ar.age is not null then ar.age when ar.resultuid <= rm.resultuid then ? else ? end as age, case when ar.relevant is not null then ar.relevant when ar.resultuid <= rm.resultuid then ? else ? end as relevant from ar inner join symbols s on ar.symbolid = s.symbolid and s.nonliquid = ? inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = s.symbolid inner join symbolgroup sg on bsl.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 downloadersymbolsettings dss on sg.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 currencypips cp on s.symbol = cp.symbol left join lateral calc_cp_signal (ar.resultuid) newlevels on true left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where ar.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (ar.simulation = ? or ar.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or ar.pattern in (...)) and (? = ? or (? = ? and ar.breakout >= ?) or (? = ? and ar.breakout < ?)) and (? = ? or ar.patternlengthbars <= ?) and newlevels.filtered = false and ar.patternstarttime >= 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;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Nov 25 17 526 1h22m21s 9s394ms [ User: postgres - Total duration: 1h22m21s - Times executed: 526 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1h18m41s - Times executed: 514 ]
[ Application: [unknown] - Total duration: 3m39s - Times executed: 12 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:02:58 Duration: 38s529ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:02:58 Duration: 37s244ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:22:40 Duration: 30s510ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
2 1h7m45s 525 117ms 24s600ms 7s743ms 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 #2
Day Hour Count Duration Avg duration Nov 25 17 525 1h7m45s 7s743ms [ User: postgres - Total duration: 1h7m45s - Times executed: 525 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1h3m53s - Times executed: 513 ]
[ Application: [unknown] - Total duration: 3m51s - Times executed: 12 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ), 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 = 't' 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 11 ELSE 0 END as age, CASE WHEN kr.relevant IS NOT NULL THEN kr.relevant WHEN kr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM kr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = kr.symbolid INNER JOIN symbols s ON bsl.symbolid = s.symbolid AND s.nonliquid = 0 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 = 3 INNER JOIN rar_max rm ON 1 = 1 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 = 'OUTBOUND' WHERE kr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (kr.simulation = 0 OR kr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR p.patternname in ('')) AND ('2' = 0 OR kr.patternclassid in ('1', '2')) AND ('400' = 0 OR kr.patternlengthbars <= '400') AND kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC LIMIT 200;
Date: 2025-11-25 17:16:22 Duration: 24s600ms Database: acaweb_fx User: postgres Remote: 182.165.1.42 Application: [unknown] Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ), 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 = 't' 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 11 ELSE 0 END as age, CASE WHEN kr.relevant IS NOT NULL THEN kr.relevant WHEN kr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM kr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = kr.symbolid INNER JOIN symbols s ON bsl.symbolid = s.symbolid AND s.nonliquid = 0 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 = 3 INNER JOIN rar_max rm ON 1 = 1 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 = 'OUTBOUND' WHERE kr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (kr.simulation = 0 OR kr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR p.patternname in ('')) AND ('2' = 0 OR kr.patternclassid in ('1', '2')) AND ('400' = 0 OR kr.patternlengthbars <= '400') AND kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC LIMIT 200;
Date: 2025-11-25 17:01:21 Duration: 24s572ms Database: acaweb_fx User: postgres Remote: 182.165.1.42 Application: [unknown] Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ), 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 = 't' 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 11 ELSE 0 END as age, CASE WHEN kr.relevant IS NOT NULL THEN kr.relevant WHEN kr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM kr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '667' AND bsl.symbolid = kr.symbolid INNER JOIN symbols s ON bsl.symbolid = s.symbolid AND s.nonliquid = 0 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 = 3 INNER JOIN rar_max rm ON 1 = 1 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 = 'OUTBOUND' WHERE kr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (kr.simulation = 0 OR kr.simulation IS NULL) AND ('0' = 0 OR s.timegranularity in ('0')) AND ('0' = 0 OR s.exchange in ('')) AND ('0' = 0 OR coalesce(bim.code, s.symbol) in ('')) AND ('0' = 0 OR p.patternname in ('')) AND ('0' = 0 OR kr.patternclassid in ('0')) AND ('0' = 0 OR kr.patternlengthbars <= '0') AND kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('0' = 0 OR age <= '0') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC LIMIT 200;
Date: 2025-11-25 17:11:18 Duration: 23s685ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
3 27m18s 477 718ms 10s818ms 3s435ms with rar_max as ( select resultuid from relevance_fibonacci_results order by resultuid desc limit ? ), fr as ( select a.*, rr.age, rr.relevant from fibonacci_results a left outer join relevance_fibonacci_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) end ), all_results as ( select fr.resultuid as resultuid, fr.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, fr.pattern as pattern_name, fr.timed as timed, fr.patternendtime as identified, dtt.timezone as timezone, fr.patternlengthbars as length, g.basegroupname, newlevels.filtered, case when fr.age is not null then fr.age when fr.resultuid <= rm.resultuid then ? else ? end as age, case when fr.relevant is not null then fr.relevant when fr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from fr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = fr.symbolid inner join symbols s on fr.symbolid = s.symbolid and s.nonliquid = ? inner join symbolgroup sg on fr.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 downloadersymbolsettings dss on fr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left join lateral calc_fib_signal_filter (fr.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 fr.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (fr.simulation = ? or fr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or fr.pattern in (...)) and (? = ? or fr.patternlengthbars <= ?) and (? = ? or (? = ? and fr.timed > cast(? as timestamp)) or (? = ? and fr.timed < cast(? as timestamp))) ), 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;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Nov 25 17 477 27m18s 3s435ms [ User: postgres - Total duration: 27m18s - Times executed: 477 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 25m39s - Times executed: 465 ]
[ Application: [unknown] - Total duration: 1m39s - Times executed: 12 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_fibonacci_results ORDER BY resultuid DESC LIMIT 1 ), fr AS ( SELECT a.*, rr.age, rr.relevant from fibonacci_results a LEFT OUTER JOIN relevance_fibonacci_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) END ), all_results AS ( SELECT fr.resultuid AS resultuid, fr.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, fr.pattern AS pattern_name, fr.timed AS timed, fr.patternendtime AS identified, dtt.timezone AS timezone, fr.patternlengthbars AS length, g.basegroupname, newLevels.filtered, CASE WHEN fr.age IS NOT NULL THEN fr.age WHEN fr.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN fr.relevant IS NOT NULL THEN fr.relevant WHEN fr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM fr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = fr.symbolid INNER JOIN symbols s ON fr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN symbolgroup sg on fr.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 downloadersymbolsettings dss ON fr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT JOIN LATERAL calc_fib_signal_filter (fr.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 = 'OUTBOUND' WHERE fr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (fr.simulation = 0 OR fr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR fr.pattern in ('')) AND ('700' = 0 OR fr.patternlengthbars <= '700') AND ('0' = 0 OR ('0' = 1 AND fr.timed > cast('1970-01-01' as timestamp)) OR ('0' = 2 AND fr.timed < cast('1970-01-01' as timestamp))) ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:03:09 Duration: 10s818ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_fibonacci_results ORDER BY resultuid DESC LIMIT 1 ), fr AS ( SELECT a.*, rr.age, rr.relevant from fibonacci_results a LEFT OUTER JOIN relevance_fibonacci_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) END ), all_results AS ( SELECT fr.resultuid AS resultuid, fr.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, fr.pattern AS pattern_name, fr.timed AS timed, fr.patternendtime AS identified, dtt.timezone AS timezone, fr.patternlengthbars AS length, g.basegroupname, newLevels.filtered, CASE WHEN fr.age IS NOT NULL THEN fr.age WHEN fr.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN fr.relevant IS NOT NULL THEN fr.relevant WHEN fr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM fr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = fr.symbolid INNER JOIN symbols s ON fr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN symbolgroup sg on fr.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 downloadersymbolsettings dss ON fr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT JOIN LATERAL calc_fib_signal_filter (fr.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 = 'OUTBOUND' WHERE fr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (fr.simulation = 0 OR fr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR fr.pattern in ('')) AND ('700' = 0 OR fr.patternlengthbars <= '700') AND ('0' = 0 OR ('0' = 1 AND fr.timed > cast('1970-01-01' as timestamp)) OR ('0' = 2 AND fr.timed < cast('1970-01-01' as timestamp))) ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:42:46 Duration: 10s706ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_fibonacci_results ORDER BY resultuid DESC LIMIT 1 ), fr AS ( SELECT a.*, rr.age, rr.relevant from fibonacci_results a LEFT OUTER JOIN relevance_fibonacci_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) END ), all_results AS ( SELECT fr.resultuid AS resultuid, fr.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, fr.pattern AS pattern_name, fr.timed AS timed, fr.patternendtime AS identified, dtt.timezone AS timezone, fr.patternlengthbars AS length, g.basegroupname, newLevels.filtered, CASE WHEN fr.age IS NOT NULL THEN fr.age WHEN fr.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN fr.relevant IS NOT NULL THEN fr.relevant WHEN fr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM fr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = fr.symbolid INNER JOIN symbols s ON fr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN symbolgroup sg on fr.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 downloadersymbolsettings dss ON fr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT JOIN LATERAL calc_fib_signal_filter (fr.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 = 'OUTBOUND' WHERE fr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (fr.simulation = 0 OR fr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR fr.pattern in ('')) AND ('400' = 0 OR fr.patternlengthbars <= '400') AND ('0' = 0 OR ('0' = 1 AND fr.timed > cast('1970-01-01' as timestamp)) OR ('0' = 2 AND fr.timed < cast('1970-01-01' as timestamp))) ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:10:59 Duration: 10s698ms Database: acaweb_fx User: postgres Remote: 182.165.1.42 Application: [unknown] Bind query: yes
4 3m31s 140,222 0ms 27ms 1ms 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 #4
Day Hour Count Duration Avg duration Nov 25 17 140,222 3m31s 1ms [ User: postgres - Total duration: 3m31s - Times executed: 140222 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 3m31s - Times executed: 140222 ]
-
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 = '958' AND bsl.symbolid = s.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = '958' AND bim.TYPE = 'OUTBOUND' WHERE s.symbolid = '515840243157599300';
Date: 2025-11-25 17:42:42 Duration: 27ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = '958' AND bsl.symbolid = s.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = '958' AND bim.TYPE = 'OUTBOUND' WHERE s.symbolid = '515840233399600300';
Date: 2025-11-25 17:22:31 Duration: 23ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = '958' AND bsl.symbolid = s.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = '958' AND bim.TYPE = 'OUTBOUND' WHERE s.symbolid = '515840217487607300';
Date: 2025-11-25 17:20:52 Duration: 23ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
5 2m15s 358 62ms 1s277ms 378ms with rar_max as ( 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;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Nov 25 17 358 2m15s 378ms [ User: postgres - Total duration: 2m15s - Times executed: 358 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 2m3s - Times executed: 346 ]
[ Application: [unknown] - Total duration: 12s358ms - Times executed: 12 ]
-
WITH rar_max as ( 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 = '689' 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 ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('400' = 0 OR ccr.patternlengthbars <= '400') ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:56:17 Duration: 1s277ms Database: acaweb_fx User: postgres Remote: 182.165.1.42 Application: [unknown] Bind query: yes
-
WITH rar_max as ( 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 = '627' 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 ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('213' = 0 OR coalesce(bim.code, s.symbol) in ('#ADBE', '#ALVG', '#AMZN', '#APPL', '#BA', '#BABA', '#BAYGn', '#BMWG', '#BNPP', '#CAT', '#CBKG', '#DAIGn', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#META', '#MSFT', '#NFLX', '#TSLA', '#VOWG', '#WMT', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS_200', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CL_BRENT', 'DASHUSD', 'EOSUSD', 'ESP_35', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'EUR_50', 'FRA_40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'GBR_100', 'HKDJPY', 'HKG_50', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NAS100', 'NEOUSD', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'OMGUSD', 'SPX500', 'TRXUSD', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'USOIL', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XMRUSD', 'XPTUSD', 'XRPUSD', 'ZARJPY', 'ZECUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'HKDJPY', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'ZARJPY', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'DASHUSD', 'EOSUSD', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NEOUSD', 'OMGUSD', 'TRXUSD', 'XMRUSD', 'XRPUSD', 'ZECUSD', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XPTUSD', 'CL_BRENT', 'USOIL', '#ALVG', '#BAYGn', '#BMWG', '#BNPP', '#CBKG', '#DAIGn', '#VOWG', 'AUS_200', 'ESP_35', 'EUR_50', 'FRA_40', 'GBR_100', 'HKG_50', 'NAS100', 'SPX500', 'US30', '#ADBE', '#AMZN', '#APPL', '#BA', '#BABA', '#CAT', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#MSFT', '#NFLX', '#TSLA', '#WMT', '#XOM')) AND ('700' = 0 OR ccr.patternlengthbars <= '700') ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:05:46 Duration: 1s264ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( 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 = '627' 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 ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('213' = 0 OR coalesce(bim.code, s.symbol) in ('#ADBE', '#ALVG', '#AMZN', '#APPL', '#BA', '#BABA', '#BAYGn', '#BMWG', '#BNPP', '#CAT', '#CBKG', '#DAIGn', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#META', '#MSFT', '#NFLX', '#TSLA', '#VOWG', '#WMT', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS_200', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CL_BRENT', 'DASHUSD', 'EOSUSD', 'ESP_35', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'EUR_50', 'FRA_40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'GBR_100', 'HKDJPY', 'HKG_50', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NAS100', 'NEOUSD', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'OMGUSD', 'SPX500', 'TRXUSD', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'USOIL', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XMRUSD', 'XPTUSD', 'XRPUSD', 'ZARJPY', 'ZECUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'HKDJPY', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'ZARJPY', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'DASHUSD', 'EOSUSD', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NEOUSD', 'OMGUSD', 'TRXUSD', 'XMRUSD', 'XRPUSD', 'ZECUSD', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XPTUSD', 'CL_BRENT', 'USOIL', '#ALVG', '#BAYGn', '#BMWG', '#BNPP', '#CBKG', '#DAIGn', '#VOWG', 'AUS_200', 'ESP_35', 'EUR_50', 'FRA_40', 'GBR_100', 'HKG_50', 'NAS100', 'SPX500', 'US30', '#ADBE', '#AMZN', '#APPL', '#BA', '#BABA', '#CAT', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#MSFT', '#NFLX', '#TSLA', '#WMT', '#XOM')) AND ('700' = 0 OR ccr.patternlengthbars <= '700') ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:05:41 Duration: 1s253ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
6 1m12s 4 15s316ms 21s93ms 18s35ms select updateageforrelevantresults ();Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Nov 25 17 4 1m12s 18s35ms [ User: postgres - Total duration: 1m12s - Times executed: 4 ]
[ Application: psql - Total duration: 1m12s - Times executed: 4 ]
-
select updateageforrelevantresults ();
Date: 2025-11-25 17:02:23 Duration: 21s93ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateageforrelevantresults ();
Date: 2025-11-25 17:17:22 Duration: 19s730ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateageforrelevantresults ();
Date: 2025-11-25 17:32:18 Duration: 16s1ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
7 51s575ms 16 2s291ms 4s419ms 3s223ms 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;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Nov 25 17 16 51s575ms 3s223ms [ User: postgres - Total duration: 51s575ms - Times executed: 16 ]
[ Application: psql - Total duration: 51s575ms - Times executed: 16 ]
-
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: 2025-11-25 17:01:19 Duration: 4s419ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:11:19 Duration: 4s226ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:56:17 Duration: 4s12ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
8 48s186ms 8 3s983ms 10s320ms 6s23ms select updateresultsmaterializedview ();Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Nov 25 17 8 48s186ms 6s23ms [ User: postgres - Total duration: 48s186ms - Times executed: 8 ]
[ Application: psql - Total duration: 48s186ms - Times executed: 8 ]
-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:02:33 Duration: 10s320ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:32:25 Duration: 7s648ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:47:23 Duration: 6s183ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
9 45s899ms 19,395 0ms 25ms 2ms 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 #9
Day Hour Count Duration Avg duration Nov 25 17 19,395 45s899ms 2ms [ User: postgres - Total duration: 45s899ms - Times executed: 19395 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 45s899ms - Times executed: 19395 ]
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '558' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'ES35' OR dss.downloadersymbol = 'ES35') AND dss.enabled = 1;
Date: 2025-11-25 17:00:04 Duration: 25ms Database: acaweb_fx User: postgres Remote: 192.168.1.145 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '538' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'USA100' OR dss.downloadersymbol = 'USA100') AND dss.enabled = 1;
Date: 2025-11-25 17:22:33 Duration: 22ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '558' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'AUDSGD' OR dss.downloadersymbol = 'AUDSGD') AND dss.enabled = 1;
Date: 2025-11-25 17:15:04 Duration: 21ms Database: acaweb_fx User: postgres Remote: 192.168.1.20 Application: PostgreSQL JDBC Driver Bind query: yes
10 39s510ms 105 98ms 895ms 376ms with last_candle as ( select acs.symbolid as symbolid, acs.latestpricedatetime as latest_candle_time, bsl.brokerid as broker_id, coalesce(bim.code, s.symbol) as symbol, bim.code as symbol_mapping, s.exchange as exchange, s.timegranularity as timegranularity from autochartist_symbolupdates acs inner join brokersymbollist bsl on acs.symbolid = bsl.symbolid inner join symbols s on acs.symbolid = s.symbolid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where bsl.brokerid = ? and s.deleted = ? and s.nonliquid = ? and acs.latestpricedatetime is not null ) select * from ( select lc.broker_id as brokerid, prf.groupid, psp.symbolid, prf.longname, psd.hourlysymbolid, lc.symbol, lc.exchange, psp.enddate, psp.dayofweek, psp.fromtime, floor(psp.fromtime / ?) + ? as sast_hh, mod(cast(psp.fromtime as int), ?) as sast_mm, current_timestamp as datetime, (powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice as closingprice, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_15 + psp.stddev_15) / ?.?) as low_15, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_15 + psp.stddev_15) / ?.?) as high_15, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_30 + psp.stddev_30) / ?.?) as low_30, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_30 + psp.stddev_30) / ?.?) as high_30, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_60 + psp.stddev_60) / ?.?) as low_60, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_60 + psp.stddev_60) / ?.?) as high_60, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_240 + psp.stddev_240) / ?.?) as low_240, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_240 + psp.stddev_240) / ?.?) as high_240, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_1440 + psp.stddev_1440) / ?.?) as low_1440, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_1440 + psp.stddev_1440) / ?.?) as high_1440, dtt.absolutetimezoneoffset as datafeedtimezoneoffset, dtt.timezone as datafeedtimezonename, (round((cast(? as float) - rank) / ? * ?)) as rank_rounded, ((cast(? as float) - rank) / ? * ?) as rank from last_candle lc inner join downloadersymbolsettings dss on lc.symbolid = dss.symbolid inner join datafeedstimetable dtt on trim(dss.classname) = trim(dtt.classname) and dtt.dayofweek = ? -- assuming timezone is same for whole week. inner join powerstats_symboldata psd on psd.symbolid = lc.symbolid left outer join powerstats_trumpet psp on psd.trumpetsymbolid = psp.symbolid and psp.dayofweek = extract(dow from lc.latest_candle_time) and psp.fromtime = cast(extract(? from lc.latest_candle_time) as integer) * ? + extract(? from (cast(extract(? from lc.latest_candle_time) as integer) / ?) * ? * interval ?) inner join prfsymboltree prf on psd.symbolid = prf.symbolid and date_trunc(?, prf.enddate) = date_trunc(?, psp.enddate) left join lateral ( select ph.hour, (ave + stddev) as volatility, rank() over (order by (ave + stddev) desc) as rank from powerstats_hourly ph where ph.symbolid = psd.hourlysymbolid and date_trunc(?,ph.enddate) = date_trunc(?, prf.enddate) ) rank_query on true where prf.brokerid = ? and rank_query.hour = floor((psp.fromtime) / ?) and volatility > ? order by rank desc, rank_rounded desc, exchange, symbol, groupid) sub order by brokerid, groupid, symbolid;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Nov 25 17 105 39s510ms 376ms [ User: postgres - Total duration: 39s510ms - Times executed: 105 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 39s510ms - Times executed: 105 ]
-
WITH last_candle AS ( SELECT acs.symbolid AS symbolid, acs.latestpricedatetime AS latest_candle_time, bsl.brokerid AS broker_id, coalesce(bim.code, s.symbol) AS symbol, bim.code AS symbol_mapping, s.exchange AS exchange, s.timegranularity AS timegranularity FROM autochartist_symbolupdates acs INNER JOIN brokersymbollist bsl ON acs.symbolid = bsl.symbolid INNER JOIN symbols s ON acs.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss ON s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE bsl.brokerid = '667' AND s.deleted = 0 AND s.nonliquid = 0 AND acs.latestpricedatetime IS NOT NULL ) SELECT * FROM ( SELECT lc.broker_id AS brokerid, prf.groupid, psp.symbolid, prf.longname, psd.hourlysymbolid, lc.symbol, lc.exchange, psp.enddate, psp.dayofweek, psp.fromtime, floor(psp.fromtime / 60) + 6 as SAST_HH, mod(cast(psp.fromtime as int), 60) as SAST_MM, current_timestamp AS datetime, (PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice AS closingprice, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_15 + psp.stddev_15) / 2.0) AS low_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_15 + psp.stddev_15) / 2.0) AS high_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_30 + psp.stddev_30) / 2.0) AS low_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_30 + psp.stddev_30) / 2.0) AS high_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_60 + psp.stddev_60) / 2.0) AS low_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_60 + psp.stddev_60) / 2.0) AS high_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_240 + psp.stddev_240) / 2.0) AS low_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_240 + psp.stddev_240) / 2.0) AS high_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_1440 + psp.stddev_1440) / 2.0) AS low_1440, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_1440 + psp.stddev_1440) / 2.0) AS high_1440, dtt.absolutetimezoneoffset AS datafeedtimezoneoffset, dtt.timezone AS datafeedtimezonename, (round((cast(25 as float) - rank) / 24 * 10)) as rank_rounded, ((cast(25 as float) - rank) / 24 * 10) as rank FROM last_candle lc INNER JOIN downloadersymbolsettings dss ON lc.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON TRIM(dss.classname) = TRIM(dtt.classname) and dtt.dayofweek = 3 -- assuming timezone is same for whole week. INNER JOIN powerstats_symboldata psd ON psd.symbolid = lc.symbolid LEFT OUTER JOIN powerstats_trumpet psp ON psd.trumpetsymbolid = psp.symbolid AND psp.dayofweek = extract(dow from lc.latest_candle_time) AND psp.fromtime = cast(extract('hour' from lc.latest_candle_time) as integer) * 60 + extract('minute' from (cast(extract('minute' from lc.latest_candle_time) as integer) / 15) * 15 * interval '1 minutes') INNER JOIN prfsymboltree prf ON psd.symbolid = prf.symbolid and DATE_TRUNC('day', prf.enddate) = DATE_TRUNC('day', psp.enddate) LEFT JOIN LATERAL ( SELECT ph.hour, (ave + stddev) AS volatility, rank() over (ORDER BY (ave + stddev) DESC) AS rank FROM powerstats_hourly ph WHERE ph.symbolid = psd.hourlysymbolid AND DATE_TRUNC('day', ph.enddate) = DATE_TRUNC('day', prf.enddate)) rank_query ON true WHERE prf.brokerid = '667' AND rank_query.hour = floor((psp.fromtime) / 60) AND volatility > 0 ORDER BY rank DESC, rank_rounded DESC, exchange, symbol, groupid) sub order by brokerid, groupid, symbolid;
Date: 2025-11-25 17:52:05 Duration: 895ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH last_candle AS ( SELECT acs.symbolid AS symbolid, acs.latestpricedatetime AS latest_candle_time, bsl.brokerid AS broker_id, coalesce(bim.code, s.symbol) AS symbol, bim.code AS symbol_mapping, s.exchange AS exchange, s.timegranularity AS timegranularity FROM autochartist_symbolupdates acs INNER JOIN brokersymbollist bsl ON acs.symbolid = bsl.symbolid INNER JOIN symbols s ON acs.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss ON s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE bsl.brokerid = '538' AND s.deleted = 0 AND s.nonliquid = 0 AND acs.latestpricedatetime IS NOT NULL ) SELECT * FROM ( SELECT lc.broker_id AS brokerid, prf.groupid, psp.symbolid, prf.longname, psd.hourlysymbolid, lc.symbol, lc.exchange, psp.enddate, psp.dayofweek, psp.fromtime, floor(psp.fromtime / 60) + 6 as SAST_HH, mod(cast(psp.fromtime as int), 60) as SAST_MM, current_timestamp AS datetime, (PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice AS closingprice, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_15 + psp.stddev_15) / 2.0) AS low_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_15 + psp.stddev_15) / 2.0) AS high_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_30 + psp.stddev_30) / 2.0) AS low_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_30 + psp.stddev_30) / 2.0) AS high_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_60 + psp.stddev_60) / 2.0) AS low_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_60 + psp.stddev_60) / 2.0) AS high_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_240 + psp.stddev_240) / 2.0) AS low_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_240 + psp.stddev_240) / 2.0) AS high_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_1440 + psp.stddev_1440) / 2.0) AS low_1440, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_1440 + psp.stddev_1440) / 2.0) AS high_1440, dtt.absolutetimezoneoffset AS datafeedtimezoneoffset, dtt.timezone AS datafeedtimezonename, (round((cast(25 as float) - rank) / 24 * 10)) as rank_rounded, ((cast(25 as float) - rank) / 24 * 10) as rank FROM last_candle lc INNER JOIN downloadersymbolsettings dss ON lc.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON TRIM(dss.classname) = TRIM(dtt.classname) and dtt.dayofweek = 3 -- assuming timezone is same for whole week. INNER JOIN powerstats_symboldata psd ON psd.symbolid = lc.symbolid LEFT OUTER JOIN powerstats_trumpet psp ON psd.trumpetsymbolid = psp.symbolid AND psp.dayofweek = extract(dow from lc.latest_candle_time) AND psp.fromtime = cast(extract('hour' from lc.latest_candle_time) as integer) * 60 + extract('minute' from (cast(extract('minute' from lc.latest_candle_time) as integer) / 15) * 15 * interval '1 minutes') INNER JOIN prfsymboltree prf ON psd.symbolid = prf.symbolid and DATE_TRUNC('day', prf.enddate) = DATE_TRUNC('day', psp.enddate) LEFT JOIN LATERAL ( SELECT ph.hour, (ave + stddev) AS volatility, rank() over (ORDER BY (ave + stddev) DESC) AS rank FROM powerstats_hourly ph WHERE ph.symbolid = psd.hourlysymbolid AND DATE_TRUNC('day', ph.enddate) = DATE_TRUNC('day', prf.enddate)) rank_query ON true WHERE prf.brokerid = '538' AND rank_query.hour = floor((psp.fromtime) / 60) AND volatility > 0 ORDER BY rank DESC, rank_rounded DESC, exchange, symbol, groupid) sub order by brokerid, groupid, symbolid;
Date: 2025-11-25 17:16:02 Duration: 810ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH last_candle AS ( SELECT acs.symbolid AS symbolid, acs.latestpricedatetime AS latest_candle_time, bsl.brokerid AS broker_id, coalesce(bim.code, s.symbol) AS symbol, bim.code AS symbol_mapping, s.exchange AS exchange, s.timegranularity AS timegranularity FROM autochartist_symbolupdates acs INNER JOIN brokersymbollist bsl ON acs.symbolid = bsl.symbolid INNER JOIN symbols s ON acs.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss ON s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE bsl.brokerid = '621' AND s.deleted = 0 AND s.nonliquid = 0 AND acs.latestpricedatetime IS NOT NULL ) SELECT * FROM ( SELECT lc.broker_id AS brokerid, prf.groupid, psp.symbolid, prf.longname, psd.hourlysymbolid, lc.symbol, lc.exchange, psp.enddate, psp.dayofweek, psp.fromtime, floor(psp.fromtime / 60) + 6 as SAST_HH, mod(cast(psp.fromtime as int), 60) as SAST_MM, current_timestamp AS datetime, (PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice AS closingprice, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_15 + psp.stddev_15) / 2.0) AS low_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_15 + psp.stddev_15) / 2.0) AS high_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_30 + psp.stddev_30) / 2.0) AS low_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_30 + psp.stddev_30) / 2.0) AS high_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_60 + psp.stddev_60) / 2.0) AS low_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_60 + psp.stddev_60) / 2.0) AS high_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_240 + psp.stddev_240) / 2.0) AS low_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_240 + psp.stddev_240) / 2.0) AS high_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_1440 + psp.stddev_1440) / 2.0) AS low_1440, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_1440 + psp.stddev_1440) / 2.0) AS high_1440, dtt.absolutetimezoneoffset AS datafeedtimezoneoffset, dtt.timezone AS datafeedtimezonename, (round((cast(25 as float) - rank) / 24 * 10)) as rank_rounded, ((cast(25 as float) - rank) / 24 * 10) as rank FROM last_candle lc INNER JOIN downloadersymbolsettings dss ON lc.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON TRIM(dss.classname) = TRIM(dtt.classname) and dtt.dayofweek = 3 -- assuming timezone is same for whole week. INNER JOIN powerstats_symboldata psd ON psd.symbolid = lc.symbolid LEFT OUTER JOIN powerstats_trumpet psp ON psd.trumpetsymbolid = psp.symbolid AND psp.dayofweek = extract(dow from lc.latest_candle_time) AND psp.fromtime = cast(extract('hour' from lc.latest_candle_time) as integer) * 60 + extract('minute' from (cast(extract('minute' from lc.latest_candle_time) as integer) / 15) * 15 * interval '1 minutes') INNER JOIN prfsymboltree prf ON psd.symbolid = prf.symbolid and DATE_TRUNC('day', prf.enddate) = DATE_TRUNC('day', psp.enddate) LEFT JOIN LATERAL ( SELECT ph.hour, (ave + stddev) AS volatility, rank() over (ORDER BY (ave + stddev) DESC) AS rank FROM powerstats_hourly ph WHERE ph.symbolid = psd.hourlysymbolid AND DATE_TRUNC('day', ph.enddate) = DATE_TRUNC('day', prf.enddate)) rank_query ON true WHERE prf.brokerid = '621' AND rank_query.hour = floor((psp.fromtime) / 60) AND volatility > 0 ORDER BY rank DESC, rank_rounded DESC, exchange, symbol, groupid) sub order by brokerid, groupid, symbolid;
Date: 2025-11-25 17:16:05 Duration: 806ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
11 35s846ms 6 5s131ms 6s704ms 5s974ms 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 = ?;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Nov 25 17 6 35s846ms 5s974ms [ User: postgres - Total duration: 35s846ms - Times executed: 6 ]
[ Application: [unknown] - Total duration: 35s846ms - Times executed: 6 ]
-
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: 2025-11-25 17:10:09 Duration: 6s704ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown] Bind query: yes
-
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: 2025-11-25 17:00:09 Duration: 6s364ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown] Bind query: yes
-
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: 2025-11-25 17:30:09 Duration: 6s105ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown] Bind query: yes
12 27s4ms 16 902ms 2s980ms 1s687ms 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;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Nov 25 17 16 27s4ms 1s687ms [ User: postgres - Total duration: 27s4ms - Times executed: 16 ]
[ Application: psql - Total duration: 27s4ms - Times executed: 16 ]
-
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: 2025-11-25 17:18:15 Duration: 2s980ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:11:14 Duration: 2s813ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:01:14 Duration: 2s416ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
13 21s885ms 34 13ms 5s480ms 643ms select fixcandlegaps (?, false);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Nov 25 17 34 21s885ms 643ms [ User: postgres - Total duration: 21s885ms - Times executed: 34 ]
[ Application: psql - Total duration: 21s885ms - Times executed: 34 ]
-
select fixcandlegaps ('ICMARKETS-AU-MT5', false);
Date: 2025-11-25 17:06:23 Duration: 5s480ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select fixcandlegaps ('ATFX', false);
Date: 2025-11-25 17:06:08 Duration: 3s642ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select fixcandlegaps ('PEPPERSTONE', false);
Date: 2025-11-25 17:06:15 Duration: 2s390ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
14 20s889ms 7,905 0ms 36ms 2ms 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 #14
Day Hour Count Duration Avg duration Nov 25 17 7,905 20s889ms 2ms [ User: postgres - Total duration: 20s889ms - Times executed: 7905 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 20s888ms - Times executed: 7904 ]
[ Application: [unknown] - Total duration: 0ms - Times executed: 1 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607218311402819301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607218311402819301' OR a.resultuid = '607218311402819301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:02:25 Duration: 36ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607215951125994301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607215951125994301' OR a.resultuid = '607215951125994301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:47:03 Duration: 36ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607215734315944301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607215734315944301' OR a.resultuid = '607215734315944301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:02:25 Duration: 35ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
15 19s430ms 16 1s146ms 1s946ms 1s214ms with sym_info as ( select s.symbol as og_symbol, s.symbolid, coalesce(bim.code, s.symbol) as symbol, s.timegranularity, s.exchange, s.longname as symbolname, g.basegroupname, bg.brokerid, dft.absolutetimezoneoffset from symbols s inner join symbolgroup sg on sg.symbolid = s.symbolid inner join brokergroups bg on bg.groupid = sg.groupid inner join groups g on g.groupid = bg.groupid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dft on dft.classname = dss.classname and dft.dayofweek = ? left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bg.brokerid and bim.type = ? where bg.brokerid = ? and basegroupname = ? and g.designation = ? and s.nonliquid = ? ), signals as ( select * from ( select cp.og_symbol, cp.resultuid as cpresultuid, kl.resultuid as klresultuid, cp.symbolid as cpsymbolid, kl.symbolid as klsymbolid, cp.symbol, cp.timegranularity as cpt, kl.timegranularity as klt, cp.direction, cp.patternname as cppatternname, kl.patternname as klpatternname, case when cp.timegranularity < kl.timegranularity then cp.timegranularity else kl.timegranularity end as mint, case when cp.timegranularity < kl.timegranularity then cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / cp.timegranularity) as numeric) else cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / kl.timegranularity) as numeric) end as qtycandlesapart, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.openprice else cp.openprice end as openprice, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.predictiontimefrom else cp.predictiontimefrom end as predictiontimefrom, case when kl.patternclassid = ? and cp.direction > ? and cp.predictionpricefrom < kl.predictionpricefrom then cp.predictionpricefrom when kl.patternclassid = ? and cp.direction > ? and cp.predictionpricefrom > kl.predictionpricefrom then kl.predictionpricefrom when kl.patternclassid = ? and cp.direction < ? and cp.predictionpriceto < kl.predictionpriceto then kl.predictionpriceto when kl.patternclassid = ? and cp.direction < ? and cp.predictionpriceto > kl.predictionpriceto then cp.predictionpriceto when kl.patternclassid = ? and cp.direction > ? and cp.predictionpricefrom < kl.patternprice then cp.predictionpricefrom when kl.patternclassid = ? and cp.direction > ? and cp.predictionpricefrom > kl.patternprice then kl.patternprice when kl.patternclassid = ? and cp.direction < ? and cp.predictionpriceto < kl.patternprice then kl.patternprice when kl.patternclassid = ? and cp.direction < ? and cp.predictionpriceto > kl.patternprice then cp.predictionpriceto end as forecastprice, case when cp.gmttimefound < kl.gmttimefound then kl.gmttimefound else cp.gmttimefound end as gmttimefound, cp.patternendtime as cppet, kl.patternendtime as klpet, case when cp.patternendtime < kl.patternendtime then kl.patternendtime else cp.patternendtime end as max_patternendtime, cp.absolutetimezoneoffset from ( select si.og_symbol, si.symbolid, si.symbol, si.timegranularity, a.resultuid, direction, (patternendtime + si.timegranularity * interval ?) as predictiontimefrom, predictionpricefrom, a.pattern as patternname, predictionpriceto, a.latestbaratbreakoutprice as openprice, gmttimefound, si.brokerid, a.patternendtime, si.absolutetimezoneoffset from sym_info si inner join autochartist_results a on si.symbolid = a.symbolid where breakout >= ? and patternquality >= ?.? and patternendtime >= current_timestamp - interval ? and patternlengthbars < ?) as cp join ( select patternclassid, patternprice, si.symbolid, si.symbol, si.timegranularity, h.resultuid, direction, (cast(atbaridentified as timestamp) + si.timegranularity * interval ?) as predictiontimefrom, predictionpricefrom, case when direction > ? then ? else ? end as patternname, predictionpriceto, atpriceidentified as openprice, gmttimefound, h.patternendtime from sym_info si inner join keylevels_results h on si.symbolid = h.symbolid where patternclassid in (...) and patternendtime >= current_timestamp - interval ? and patternlengthbars < ?) as kl on cp.symbol = kl.symbol and cp.direction = kl.direction) as _tmp inner join currencypips pips on _tmp.og_symbol = pips.symbol where abs(forecastprice - openprice) / pip >= ? and _tmp.qtycandlesapart <= ? and ((cpresultuid > ( select coalesce(max(cpresultuid), ?) from correlating_signals acs where acs.basegroupname = ? and acs.brokerid = ?)) or (klresultuid > ( select coalesce(max(klresultuid), ?) from correlating_signals acs where acs.basegroupname = ? and acs.brokerid = ?))) -- maximum per day and ( select count(distinct cs.cpresultuid) -- count for today from correlating_signals cs where cs.brokerid = ? and cs.basegroupname = ? and date_trunc(?, cs.gmttimefound) = date_trunc(?, now()) and sent is true and filtered is false ) <= ( select case when coalesce(daily_max, ?) < ? then ? else coalesce(daily_max,?) end from corr_sigs_config_v where broker_id = ? limit ? ) and extract(epoch from age(current_timestamp at time zone ?, max_patternendtime - absolutetimezoneoffset * interval ?))/? < mint*? ), maxstats as ( select max(statsid) as maxid , st.brokerid, st.groupingname, st.groupingtype from stats st inner join sym_info si on st.brokerid = si.brokerid and case when st.groupingtype = ? then st.groupingname ilike si.exchange else st.groupingname ilike si.basegroupname end group by st.groupingname, st.brokerid, st.groupingtype ) select *, round(cast((cp_correct + kl_correct) / (cp_total + kl_total) * ? as numeric), ?) as percent, round(cast((kl_correct) / (kl_total) * ? as numeric), ?) as klpercent, round(cast((cp_correct ) / (cp_total ) * ? as numeric), ?) as cppercent from ( select sig.cpresultuid, sig.klresultuid, sig.cpsymbolid, si.symbol, sig.cpt, sig.klt, sig.direction, sig.cppatternname, sig.klpatternname, round(cast(sig.openprice as numeric), ?) as openprice, round(cast(sig.forecastprice as numeric), ?) as forecastprice, cast(round(cast(abs(sig.forecastprice - sig.openprice)/pip as numeric), ?)as int) as forecastpips, sig.predictiontimefrom, sig.gmttimefound, si.brokerid, ms.groupingname, si.basegroupname , si.symbolname, cast(cp_sym.correct + cp_patt.correct + cp_interval.correct + cp_hod.correct as float) as cp_correct, cast(cp_hod.total + cp_sym.total + cp_patt.total + cp_interval.total as float) as cp_total, cast(kl_sym.correct + kl_interval.correct + kl_hod.correct as float) as kl_correct, cast(kl_hod.total + kl_sym.total + kl_interval.total as float) as kl_total from signals sig inner join sym_info si on sig.cpsymbolid = si.symbolid inner join maxstats ms on case when ms.groupingtype = ? then ms.groupingname ilike si.exchange else ms.groupingname ilike si.basegroupname end -- cp stats inner join stats_summary cp_hod on cp_hod.statsid = ms.maxid and cp_hod.category = ? and date_part(?, sig.cppet) = cast(cp_hod.name as int) inner join stats_summary cp_interval on cp_interval.statsid = ms.maxid and cp_interval.category = ? and sig.cpt = cast(cp_interval.name as int) inner join stats_summary cp_patt on cp_patt.statsid = ms.maxid and cp_patt.category = ? and cp_patt.name ilike sig.cppatternname inner join stats_summary cp_sym on cp_sym.statsid = ms.maxid and cp_sym.category = ? and cp_sym.name ilike si.symbol -- kl stats inner join stats_hrs_summary kl_hod on kl_hod.statsid = ms.maxid and kl_hod.category = ? and date_part(?, sig.klpet) = cast(kl_hod.name as int) inner join stats_hrs_summary kl_interval on kl_interval.statsid = ms.maxid and kl_interval.category = ? and sig.klt = cast(kl_interval.name as int) inner join stats_hrs_summary kl_sym on kl_sym.statsid = ms.maxid and kl_sym.category = ? and kl_sym.name ilike si.symbol ) as tmp order by tmp.gmttimefound desc;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Nov 25 17 16 19s430ms 1s214ms [ User: postgres - Total duration: 19s430ms - Times executed: 16 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 19s430ms - Times executed: 16 ]
-
with sym_info as ( select s.symbol as og_symbol, s.symbolid, coalesce(bim.code, s.symbol) as symbol, s.timegranularity, s.exchange, s.longname as symbolname, g.basegroupname, bg.brokerid, dft.absolutetimezoneoffset from symbols s inner join symbolgroup sg on sg.symbolid = s.symbolid inner join brokergroups bg on bg.groupid = sg.groupid inner join groups g on g.groupid = bg.groupid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dft on dft.classname = dss.classname and dft.dayofweek = 3 LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bg.brokerid AND bim.TYPE = 'OUTBOUND' where bg.brokerid = '692' and basegroupname = 'Forex' and g.designation = '(All Intraday)' and s.nonliquid = 0 ), signals as ( select * from ( select cp.og_symbol, cp.resultuid as cpresultuid, kl.resultuid as klresultuid, cp.symbolid as cpsymbolid, kl.symbolid as klsymbolid, cp.symbol, cp.timegranularity as cpt, kl.timegranularity as klt, cp.direction, cp.patternname as cppatternname, kl.patternname as klpatternname, case when cp.timegranularity < kl.timegranularity then cp.timegranularity else kl.timegranularity end as mint, case when cp.timegranularity < kl.timegranularity then cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / cp.timegranularity) as numeric) else cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / kl.timegranularity) as numeric) end as qtycandlesapart, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.openprice else cp.openprice end as openprice, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.predictiontimefrom else cp.predictiontimefrom end as predictiontimefrom, case when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom < kl.predictionpricefrom then cp.predictionpricefrom when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom > kl.predictionpricefrom then kl.predictionpricefrom when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto < kl.predictionpriceto then kl.predictionpriceto when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto > kl.predictionpriceto then cp.predictionpriceto when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom < kl.patternprice then cp.predictionpricefrom when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom > kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto < kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto > kl.patternprice then cp.predictionpriceto end as forecastprice, case when cp.gmttimefound < kl.gmttimefound then kl.gmttimefound else cp.gmttimefound end as gmttimefound, cp.patternendtime as cppet, kl.patternendtime as klpet, case when cp.patternendtime < kl.patternendtime then kl.patternendtime else cp.patternendtime end as max_patternendtime, cp.absolutetimezoneoffset from ( select si.og_symbol, si.symbolid, si.symbol, si.timegranularity, a.resultuid, direction, (patternendtime + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, a.pattern as patternname, predictionpriceto, a.latestbaratbreakoutprice as openprice, gmttimefound, si.brokerid, a.patternendtime, si.absolutetimezoneoffset from sym_info si inner join autochartist_results a on si.symbolid = a.symbolid where breakout >= 0 and patternquality >= 0.3 and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as cp join ( select patternclassid, patternprice, si.symbolid, si.symbol, si.timegranularity, h.resultuid, direction, (cast(atbaridentified as timestamp) + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, case when direction > 0 then 'Resistance' else 'Support' end as patternname, predictionpriceto, atpriceidentified as openprice, gmttimefound, h.patternendtime from sym_info si inner join keylevels_results h on si.symbolid = h.symbolid where patternclassid in (1, 2) and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as kl on cp.symbol = kl.symbol and cp.direction = kl.direction) as _tmp inner join currencypips pips on _tmp.og_symbol = pips.symbol where abs(forecastprice - openprice) / pip >= 20 and _tmp.qtycandlesapart <= 5 and ((cpresultuid > ( SELECT COALESCE(MAX(cpresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '692')) OR (klresultuid > ( SELECT COALESCE(MAX(klresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '692'))) -- maximum per day and ( select count(distinct cs.cpresultuid) -- count for today from correlating_signals cs where cs.brokerid = '692' and cs.basegroupname = 'Forex' and date_trunc('day', cs.gmttimefound) = date_trunc('day', now()) and sent is true and filtered is false) <= ( select case when coalesce(daily_max, 5) < 1 then 1000 else coalesce(daily_max, 5) end from corr_sigs_config_v where broker_id = '692' limit 1) and extract(epoch from age(current_timestamp at TIME ZONE 'utc', max_patternendtime - absolutetimezoneoffset * INTERVAL '1 hour')) / 60 < mint * 3 ), maxstats as ( select MAX(statsid) as maxid, st.brokerid, st.groupingname, st.groupingtype from stats st inner join sym_info si on st.brokerid = si.brokerid and case when st.groupingtype = 'exchange' then st.groupingname ilike si.exchange else st.groupingname ilike si.basegroupname end group by st.groupingname, st.brokerid, st.groupingtype ) select *, round(cast((cp_correct + kl_correct) / (cp_total + kl_total) * 100 as numeric), 2) as percent, round(cast((kl_correct) / (kl_total) * 100 as numeric), 2) as klPercent, round(cast((cp_correct) / (cp_total) * 100 as numeric), 2) as cpPercent from ( select sig.cpresultuid, sig.klresultuid, sig.cpsymbolid, si.symbol, sig.cpt, sig.klt, sig.direction, sig.cppatternname, sig.klpatternname, round(cast(sig.openprice as numeric), 5) as openprice, round(cast(sig.forecastprice as numeric), 5) as forecastprice, CAST(round(cast(abs(sig.forecastprice - sig.openprice) / pip as numeric), 0) as int) as forecastpips, sig.predictiontimefrom, sig.gmttimefound, si.brokerid, ms.groupingname, si.basegroupname, si.symbolname, cast(cp_sym.correct + cp_patt.correct + cp_interval.correct + cp_hod.correct as float) as cp_correct, cast(cp_hod.total + cp_sym.total + cp_patt.total + cp_interval.total as float) as cp_total, cast(kl_sym.correct + kl_interval.correct + kl_hod.correct as float) as kl_correct, cast(kl_hod.total + kl_sym.total + kl_interval.total as float) as kl_total from signals sig inner join sym_info si on sig.cpsymbolid = si.symbolid inner join maxstats ms on case when ms.groupingtype = 'exchange' then ms.groupingname ilike si.exchange else ms.groupingname ilike si.basegroupname end -- cp stats inner join stats_summary cp_hod on cp_hod.statsid = ms.maxid and cp_hod.category = 'hourofday' and date_part('hour', sig.cppet) = cast(cp_hod.name as int) inner join stats_summary cp_interval on cp_interval.statsid = ms.maxid and cp_interval.category = 'interval' and sig.cpt = cast(cp_interval.name as int) inner join stats_summary cp_patt on cp_patt.statsid = ms.maxid and cp_patt.category = 'pattern' and cp_patt.name ilike sig.cppatternname inner join stats_summary cp_sym on cp_sym.statsid = ms.maxid and cp_sym.category = 'symbol' and cp_sym.name ilike si.symbol -- kl stats inner join stats_hrs_summary kl_hod on kl_hod.statsid = ms.maxid and kl_hod.category = 'hourofday' and date_part('hour', sig.klpet) = cast(kl_hod.name as int) inner join stats_hrs_summary kl_interval on kl_interval.statsid = ms.maxid and kl_interval.category = 'interval' and sig.klt = cast(kl_interval.name as int) inner join stats_hrs_summary kl_sym on kl_sym.statsid = ms.maxid and kl_sym.category = 'symbol' and kl_sym.name ilike si.symbol) AS tmp order by tmp.gmttimefound desc;
Date: 2025-11-25 17:51:54 Duration: 1s946ms Database: acaweb_fx User: postgres Remote: 192.168.4.238 Application: PostgreSQL JDBC Driver Bind query: yes
-
with sym_info as ( select s.symbol as og_symbol, s.symbolid, coalesce(bim.code, s.symbol) as symbol, s.timegranularity, s.exchange, s.longname as symbolname, g.basegroupname, bg.brokerid, dft.absolutetimezoneoffset from symbols s inner join symbolgroup sg on sg.symbolid = s.symbolid inner join brokergroups bg on bg.groupid = sg.groupid inner join groups g on g.groupid = bg.groupid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dft on dft.classname = dss.classname and dft.dayofweek = 3 LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bg.brokerid AND bim.TYPE = 'OUTBOUND' where bg.brokerid = '620' and basegroupname = 'Forex' and g.designation = '(All Intraday)' and s.nonliquid = 0 ), signals as ( select * from ( select cp.og_symbol, cp.resultuid as cpresultuid, kl.resultuid as klresultuid, cp.symbolid as cpsymbolid, kl.symbolid as klsymbolid, cp.symbol, cp.timegranularity as cpt, kl.timegranularity as klt, cp.direction, cp.patternname as cppatternname, kl.patternname as klpatternname, case when cp.timegranularity < kl.timegranularity then cp.timegranularity else kl.timegranularity end as mint, case when cp.timegranularity < kl.timegranularity then cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / cp.timegranularity) as numeric) else cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / kl.timegranularity) as numeric) end as qtycandlesapart, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.openprice else cp.openprice end as openprice, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.predictiontimefrom else cp.predictiontimefrom end as predictiontimefrom, case when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom < kl.predictionpricefrom then cp.predictionpricefrom when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom > kl.predictionpricefrom then kl.predictionpricefrom when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto < kl.predictionpriceto then kl.predictionpriceto when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto > kl.predictionpriceto then cp.predictionpriceto when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom < kl.patternprice then cp.predictionpricefrom when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom > kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto < kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto > kl.patternprice then cp.predictionpriceto end as forecastprice, case when cp.gmttimefound < kl.gmttimefound then kl.gmttimefound else cp.gmttimefound end as gmttimefound, cp.patternendtime as cppet, kl.patternendtime as klpet, case when cp.patternendtime < kl.patternendtime then kl.patternendtime else cp.patternendtime end as max_patternendtime, cp.absolutetimezoneoffset from ( select si.og_symbol, si.symbolid, si.symbol, si.timegranularity, a.resultuid, direction, (patternendtime + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, a.pattern as patternname, predictionpriceto, a.latestbaratbreakoutprice as openprice, gmttimefound, si.brokerid, a.patternendtime, si.absolutetimezoneoffset from sym_info si inner join autochartist_results a on si.symbolid = a.symbolid where breakout >= 0 and patternquality >= 0.3 and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as cp join ( select patternclassid, patternprice, si.symbolid, si.symbol, si.timegranularity, h.resultuid, direction, (cast(atbaridentified as timestamp) + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, case when direction > 0 then 'Resistance' else 'Support' end as patternname, predictionpriceto, atpriceidentified as openprice, gmttimefound, h.patternendtime from sym_info si inner join keylevels_results h on si.symbolid = h.symbolid where patternclassid in (1, 2) and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as kl on cp.symbol = kl.symbol and cp.direction = kl.direction) as _tmp inner join currencypips pips on _tmp.og_symbol = pips.symbol where abs(forecastprice - openprice) / pip >= 20 and _tmp.qtycandlesapart <= 5 and ((cpresultuid > ( SELECT COALESCE(MAX(cpresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '620')) OR (klresultuid > ( SELECT COALESCE(MAX(klresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '620'))) -- maximum per day and ( select count(distinct cs.cpresultuid) -- count for today from correlating_signals cs where cs.brokerid = '620' and cs.basegroupname = 'Forex' and date_trunc('day', cs.gmttimefound) = date_trunc('day', now()) and sent is true and filtered is false) <= ( select case when coalesce(daily_max, 5) < 1 then 1000 else coalesce(daily_max, 5) end from corr_sigs_config_v where broker_id = '620' limit 1) and extract(epoch from age(current_timestamp at TIME ZONE 'utc', max_patternendtime - absolutetimezoneoffset * INTERVAL '1 hour')) / 60 < mint * 3 ), maxstats as ( select MAX(statsid) as maxid, st.brokerid, st.groupingname, st.groupingtype from stats st inner join sym_info si on st.brokerid = si.brokerid and case when st.groupingtype = 'exchange' then st.groupingname ilike si.exchange else st.groupingname ilike si.basegroupname end group by st.groupingname, st.brokerid, st.groupingtype ) select *, round(cast((cp_correct + kl_correct) / (cp_total + kl_total) * 100 as numeric), 2) as percent, round(cast((kl_correct) / (kl_total) * 100 as numeric), 2) as klPercent, round(cast((cp_correct) / (cp_total) * 100 as numeric), 2) as cpPercent from ( select sig.cpresultuid, sig.klresultuid, sig.cpsymbolid, si.symbol, sig.cpt, sig.klt, sig.direction, sig.cppatternname, sig.klpatternname, round(cast(sig.openprice as numeric), 5) as openprice, round(cast(sig.forecastprice as numeric), 5) as forecastprice, CAST(round(cast(abs(sig.forecastprice - sig.openprice) / pip as numeric), 0) as int) as forecastpips, sig.predictiontimefrom, sig.gmttimefound, si.brokerid, ms.groupingname, si.basegroupname, si.symbolname, cast(cp_sym.correct + cp_patt.correct + cp_interval.correct + cp_hod.correct as float) as cp_correct, cast(cp_hod.total + cp_sym.total + cp_patt.total + cp_interval.total as float) as cp_total, cast(kl_sym.correct + kl_interval.correct + kl_hod.correct as float) as kl_correct, cast(kl_hod.total + kl_sym.total + kl_interval.total as float) as kl_total from signals sig inner join sym_info si on sig.cpsymbolid = si.symbolid inner join maxstats ms on case when ms.groupingtype = 'exchange' then ms.groupingname ilike si.exchange else ms.groupingname ilike si.basegroupname end -- cp stats inner join stats_summary cp_hod on cp_hod.statsid = ms.maxid and cp_hod.category = 'hourofday' and date_part('hour', sig.cppet) = cast(cp_hod.name as int) inner join stats_summary cp_interval on cp_interval.statsid = ms.maxid and cp_interval.category = 'interval' and sig.cpt = cast(cp_interval.name as int) inner join stats_summary cp_patt on cp_patt.statsid = ms.maxid and cp_patt.category = 'pattern' and cp_patt.name ilike sig.cppatternname inner join stats_summary cp_sym on cp_sym.statsid = ms.maxid and cp_sym.category = 'symbol' and cp_sym.name ilike si.symbol -- kl stats inner join stats_hrs_summary kl_hod on kl_hod.statsid = ms.maxid and kl_hod.category = 'hourofday' and date_part('hour', sig.klpet) = cast(kl_hod.name as int) inner join stats_hrs_summary kl_interval on kl_interval.statsid = ms.maxid and kl_interval.category = 'interval' and sig.klt = cast(kl_interval.name as int) inner join stats_hrs_summary kl_sym on kl_sym.statsid = ms.maxid and kl_sym.category = 'symbol' and kl_sym.name ilike si.symbol) AS tmp order by tmp.gmttimefound desc;
Date: 2025-11-25 17:06:44 Duration: 1s236ms Database: acaweb_fx User: postgres Remote: 192.168.4.238 Application: PostgreSQL JDBC Driver Bind query: yes
-
with sym_info as ( select s.symbol as og_symbol, s.symbolid, coalesce(bim.code, s.symbol) as symbol, s.timegranularity, s.exchange, s.longname as symbolname, g.basegroupname, bg.brokerid, dft.absolutetimezoneoffset from symbols s inner join symbolgroup sg on sg.symbolid = s.symbolid inner join brokergroups bg on bg.groupid = sg.groupid inner join groups g on g.groupid = bg.groupid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dft on dft.classname = dss.classname and dft.dayofweek = 3 LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bg.brokerid AND bim.TYPE = 'OUTBOUND' where bg.brokerid = '617' and basegroupname = 'Forex' and g.designation = '(All Intraday)' and s.nonliquid = 0 ), signals as ( select * from ( select cp.og_symbol, cp.resultuid as cpresultuid, kl.resultuid as klresultuid, cp.symbolid as cpsymbolid, kl.symbolid as klsymbolid, cp.symbol, cp.timegranularity as cpt, kl.timegranularity as klt, cp.direction, cp.patternname as cppatternname, kl.patternname as klpatternname, case when cp.timegranularity < kl.timegranularity then cp.timegranularity else kl.timegranularity end as mint, case when cp.timegranularity < kl.timegranularity then cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / cp.timegranularity) as numeric) else cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / kl.timegranularity) as numeric) end as qtycandlesapart, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.openprice else cp.openprice end as openprice, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.predictiontimefrom else cp.predictiontimefrom end as predictiontimefrom, case when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom < kl.predictionpricefrom then cp.predictionpricefrom when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom > kl.predictionpricefrom then kl.predictionpricefrom when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto < kl.predictionpriceto then kl.predictionpriceto when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto > kl.predictionpriceto then cp.predictionpriceto when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom < kl.patternprice then cp.predictionpricefrom when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom > kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto < kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto > kl.patternprice then cp.predictionpriceto end as forecastprice, case when cp.gmttimefound < kl.gmttimefound then kl.gmttimefound else cp.gmttimefound end as gmttimefound, cp.patternendtime as cppet, kl.patternendtime as klpet, case when cp.patternendtime < kl.patternendtime then kl.patternendtime else cp.patternendtime end as max_patternendtime, cp.absolutetimezoneoffset from ( select si.og_symbol, si.symbolid, si.symbol, si.timegranularity, a.resultuid, direction, (patternendtime + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, a.pattern as patternname, predictionpriceto, a.latestbaratbreakoutprice as openprice, gmttimefound, si.brokerid, a.patternendtime, si.absolutetimezoneoffset from sym_info si inner join autochartist_results a on si.symbolid = a.symbolid where breakout >= 0 and patternquality >= 0.3 and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as cp join ( select patternclassid, patternprice, si.symbolid, si.symbol, si.timegranularity, h.resultuid, direction, (cast(atbaridentified as timestamp) + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, case when direction > 0 then 'Resistance' else 'Support' end as patternname, predictionpriceto, atpriceidentified as openprice, gmttimefound, h.patternendtime from sym_info si inner join keylevels_results h on si.symbolid = h.symbolid where patternclassid in (1, 2) and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as kl on cp.symbol = kl.symbol and cp.direction = kl.direction) as _tmp inner join currencypips pips on _tmp.og_symbol = pips.symbol where abs(forecastprice - openprice) / pip >= 20 and _tmp.qtycandlesapart <= 5 and ((cpresultuid > ( SELECT COALESCE(MAX(cpresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '617')) OR (klresultuid > ( SELECT COALESCE(MAX(klresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '617'))) -- maximum per day and ( select count(distinct cs.cpresultuid) -- count for today from correlating_signals cs where cs.brokerid = '617' and cs.basegroupname = 'Forex' and date_trunc('day', cs.gmttimefound) = date_trunc('day', now()) and sent is true and filtered is false) <= ( select case when coalesce(daily_max, 5) < 1 then 1000 else coalesce(daily_max, 5) end from corr_sigs_config_v where broker_id = '617' limit 1) and extract(epoch from age(current_timestamp at TIME ZONE 'utc', max_patternendtime - absolutetimezoneoffset * INTERVAL '1 hour')) / 60 < mint * 3 ), maxstats as ( select MAX(statsid) as maxid, st.brokerid, st.groupingname, st.groupingtype from stats st inner join sym_info si on st.brokerid = si.brokerid and case when st.groupingtype = 'exchange' then st.groupingname ilike si.exchange else st.groupingname ilike si.basegroupname end group by st.groupingname, st.brokerid, st.groupingtype ) select *, round(cast((cp_correct + kl_correct) / (cp_total + kl_total) * 100 as numeric), 2) as percent, round(cast((kl_correct) / (kl_total) * 100 as numeric), 2) as klPercent, round(cast((cp_correct) / (cp_total) * 100 as numeric), 2) as cpPercent from ( select sig.cpresultuid, sig.klresultuid, sig.cpsymbolid, si.symbol, sig.cpt, sig.klt, sig.direction, sig.cppatternname, sig.klpatternname, round(cast(sig.openprice as numeric), 5) as openprice, round(cast(sig.forecastprice as numeric), 5) as forecastprice, CAST(round(cast(abs(sig.forecastprice - sig.openprice) / pip as numeric), 0) as int) as forecastpips, sig.predictiontimefrom, sig.gmttimefound, si.brokerid, ms.groupingname, si.basegroupname, si.symbolname, cast(cp_sym.correct + cp_patt.correct + cp_interval.correct + cp_hod.correct as float) as cp_correct, cast(cp_hod.total + cp_sym.total + cp_patt.total + cp_interval.total as float) as cp_total, cast(kl_sym.correct + kl_interval.correct + kl_hod.correct as float) as kl_correct, cast(kl_hod.total + kl_sym.total + kl_interval.total as float) as kl_total from signals sig inner join sym_info si on sig.cpsymbolid = si.symbolid inner join maxstats ms on case when ms.groupingtype = 'exchange' then ms.groupingname ilike si.exchange else ms.groupingname ilike si.basegroupname end -- cp stats inner join stats_summary cp_hod on cp_hod.statsid = ms.maxid and cp_hod.category = 'hourofday' and date_part('hour', sig.cppet) = cast(cp_hod.name as int) inner join stats_summary cp_interval on cp_interval.statsid = ms.maxid and cp_interval.category = 'interval' and sig.cpt = cast(cp_interval.name as int) inner join stats_summary cp_patt on cp_patt.statsid = ms.maxid and cp_patt.category = 'pattern' and cp_patt.name ilike sig.cppatternname inner join stats_summary cp_sym on cp_sym.statsid = ms.maxid and cp_sym.category = 'symbol' and cp_sym.name ilike si.symbol -- kl stats inner join stats_hrs_summary kl_hod on kl_hod.statsid = ms.maxid and kl_hod.category = 'hourofday' and date_part('hour', sig.klpet) = cast(kl_hod.name as int) inner join stats_hrs_summary kl_interval on kl_interval.statsid = ms.maxid and kl_interval.category = 'interval' and sig.klt = cast(kl_interval.name as int) inner join stats_hrs_summary kl_sym on kl_sym.statsid = ms.maxid and kl_sym.category = 'symbol' and kl_sym.name ilike si.symbol) AS tmp order by tmp.gmttimefound desc;
Date: 2025-11-25 17:06:47 Duration: 1s235ms Database: acaweb_fx User: postgres Remote: 192.168.4.238 Application: PostgreSQL JDBC Driver Bind query: yes
16 18s208ms 3,868 0ms 52ms 4ms select t.pricedatetime as pricedatetime, t.open as open, t.high as high, t.low as low, t.close "..." close, t.volume as volume, t.bsf as bsf from t60 t where t.symbolid = ? and (bsf = ? or bsf is null) and pricedatetime >= ? and pricedatetime <= ? order by pricedatetime desc limit ?;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Nov 25 17 3,868 18s208ms 4ms [ User: postgres - Total duration: 18s208ms - Times executed: 3868 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 18s208ms - Times executed: 3868 ]
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840233385428300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:00:03 Duration: 52ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840233929139300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:58:07 Duration: 51ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840216981120300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:00:00 Duration: 46ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
17 14s986ms 150 16ms 528ms 99ms select distinct a.symbolid, p.resultuid, case when a.breakout >= ? then ? else ? end as type, a.resultid, a.bandwidth, a.patternlengthbars, a.patternendtime, a.resy0, a.supporty0, a.resy1, a.supporty1, a.direction, a.predictionpriceto, a.patternendprice, a.predictionpricefrom, a.resx0, a.supportx0, a.resgradient, a.supportgradient from relevance_autochartist_results p inner join autochartist_results a on p.resultuid = a.resultuid inner join autochartist_stocklist asl on a.symbolid = asl.symbolid where asl.enabled = ? and asl.recognitionengine ilike ?;Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Nov 25 17 150 14s986ms 99ms [ User: postgres - Total duration: 14s986ms - Times executed: 150 ]
[ Application: [unknown] - Total duration: 14s986ms - Times executed: 150 ]
-
SELECT distinct a.symbolid, p.resultuid, case when a.breakout >= 0 then 1 else 2 end as type, a.resultid, a.bandwidth, a.patternlengthbars, a.patternendtime, a.resy0, a.supporty0, a.resy1, a.supporty1, a.direction, a.predictionpriceto, a.patternendprice, a.predictionpricefrom, a.resx0, a.supportx0, a.resgradient, a.supportgradient FROM relevance_autochartist_results p INNER JOIN autochartist_results a ON p.resultuid = a.resultuid INNER JOIN autochartist_stocklist asl ON a.symbolid = asl.symbolid WHERE asl.enabled = 1 AND asl.recognitionengine ILIKE 'PEPPERSTONE - 1';
Date: 2025-11-25 17:16:08 Duration: 528ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
SELECT distinct a.symbolid, p.resultuid, case when a.breakout >= 0 then 1 else 2 end as type, a.resultid, a.bandwidth, a.patternlengthbars, a.patternendtime, a.resy0, a.supporty0, a.resy1, a.supporty1, a.direction, a.predictionpriceto, a.patternendprice, a.predictionpricefrom, a.resx0, a.supportx0, a.resgradient, a.supportgradient FROM relevance_autochartist_results p INNER JOIN autochartist_results a ON p.resultuid = a.resultuid INNER JOIN autochartist_stocklist asl ON a.symbolid = asl.symbolid WHERE asl.enabled = 1 AND asl.recognitionengine ILIKE 'ATFX - 1';
Date: 2025-11-25 17:01:01 Duration: 351ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
SELECT distinct a.symbolid, p.resultuid, case when a.breakout >= 0 then 1 else 2 end as type, a.resultid, a.bandwidth, a.patternlengthbars, a.patternendtime, a.resy0, a.supporty0, a.resy1, a.supporty1, a.direction, a.predictionpriceto, a.patternendprice, a.predictionpricefrom, a.resx0, a.supportx0, a.resgradient, a.supportgradient FROM relevance_autochartist_results p INNER JOIN autochartist_results a ON p.resultuid = a.resultuid INNER JOIN autochartist_stocklist asl ON a.symbolid = asl.symbolid WHERE asl.enabled = 1 AND asl.recognitionengine ILIKE 'ATFX - 1';
Date: 2025-11-25 17:16:04 Duration: 317ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
18 11s200ms 6 1s60ms 3s201ms 1s866ms refresh materialized view concurrently latest_t15_candle_view;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Nov 25 17 6 11s200ms 1s866ms [ User: postgres - Total duration: 11s200ms - Times executed: 6 ]
[ Application: [unknown] - Total duration: 11s200ms - Times executed: 6 ]
-
refresh materialized view concurrently latest_t15_candle_view;
Date: 2025-11-25 17:01:20 Duration: 3s201ms Database: acaweb_fx User: postgres Remote: 192.168.4.98 Application: [unknown]
-
refresh materialized view concurrently latest_t15_candle_view;
Date: 2025-11-25 17:31:18 Duration: 2s23ms Database: acaweb_fx User: postgres Remote: 192.168.4.98 Application: [unknown]
-
refresh materialized view concurrently latest_t15_candle_view;
Date: 2025-11-25 17:16:18 Duration: 1s977ms Database: acaweb_fx User: postgres Remote: 192.168.4.98 Application: [unknown]
19 11s106ms 150 18ms 319ms 74ms select distinct k.symbolid, p.resultuid, k.symbolid, k.bandwidth, k.direction, k.patternendtime, k.patternprice, k.patternlengthbars, k.breakoutbars, k.uniquepointsvalue, k.predictionpricefrom, k.predictionpriceto, k.furthestprice, k.patternclassid from relevance_keylevels_results p inner join keylevels_results k on p.resultuid = k.resultuid inner join autochartist_stocklist asl on k.symbolid = asl.symbolid where k.patternclassid in (...) and asl.enabled = ? and asl.recognitionengine ilike ?;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Nov 25 17 150 11s106ms 74ms [ User: postgres - Total duration: 11s106ms - Times executed: 150 ]
[ Application: [unknown] - Total duration: 11s106ms - Times executed: 150 ]
-
SELECT DISTINCT k.symbolid, p.resultuid, k.symbolid, k.bandwidth, k.direction, k.patternendtime, k.patternprice, k.patternlengthbars, k.breakoutbars, k.uniquepointsvalue, k.predictionpricefrom, k.predictionpriceto, k.furthestprice, k.patternclassid FROM relevance_keylevels_results p INNER JOIN keylevels_results k ON p.resultuid = k.resultuid INNER JOIN autochartist_stocklist asl ON k.symbolid = asl.symbolid WHERE k.patternclassid in (1, 2) AND asl.enabled = 1 AND asl.recognitionengine ILIKE 'HOTFOREX - 1';
Date: 2025-11-25 17:02:17 Duration: 319ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
SELECT DISTINCT k.symbolid, p.resultuid, k.symbolid, k.bandwidth, k.direction, k.patternendtime, k.patternprice, k.patternlengthbars, k.breakoutbars, k.uniquepointsvalue, k.predictionpricefrom, k.predictionpriceto, k.furthestprice, k.patternclassid FROM relevance_keylevels_results p INNER JOIN keylevels_results k ON p.resultuid = k.resultuid INNER JOIN autochartist_stocklist asl ON k.symbolid = asl.symbolid WHERE k.patternclassid in (1, 2) AND asl.enabled = 1 AND asl.recognitionengine ILIKE 'AXIORY - 1';
Date: 2025-11-25 17:16:10 Duration: 284ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
SELECT DISTINCT k.symbolid, p.resultuid, k.symbolid, k.bandwidth, k.direction, k.patternendtime, k.patternprice, k.patternlengthbars, k.breakoutbars, k.uniquepointsvalue, k.predictionpricefrom, k.predictionpriceto, k.furthestprice, k.patternclassid FROM relevance_keylevels_results p INNER JOIN keylevels_results k ON p.resultuid = k.resultuid INNER JOIN autochartist_stocklist asl ON k.symbolid = asl.symbolid WHERE k.patternclassid in (1, 2) AND asl.enabled = 1 AND asl.recognitionengine ILIKE 'Alpari - 1';
Date: 2025-11-25 17:00:47 Duration: 271ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
20 9s379ms 8,344 0ms 4ms 1ms insert into executionlogs (executionid, status, message, details, detailtype) values (null, ?, ?, null, null);Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Nov 25 17 8,344 9s379ms 1ms [ User: postgres - Total duration: 9s379ms - Times executed: 8344 ]
[ Application: [unknown] - Total duration: 9s379ms - Times executed: 8344 ]
-
INSERT INTO executionlogs (executionid, status, message, details, detailtype) VALUES (NULL, 'info', 'evaluating processid: 107, schedule: 1 * * * * Africa/Johannesburg', NULL, NULL);
Date: 2025-11-25 17:10:52 Duration: 4ms Database: socialmedia User: postgres Remote: 192.168.4.33 Application: [unknown]
-
INSERT INTO executionlogs (executionid, status, message, details, detailtype) VALUES (NULL, 'info', 'evaluating processid: 168, schedule: 0 8 * * 0 Africa/Johannesburg', NULL, NULL);
Date: 2025-11-25 17:00:59 Duration: 4ms Database: socialmedia User: postgres Remote: 192.168.4.33 Application: [unknown]
-
INSERT INTO executionlogs (executionid, status, message, details, detailtype) VALUES (NULL, 'info', 'running 144', NULL, NULL);
Date: 2025-11-25 17:00:57 Duration: 3ms Database: socialmedia User: postgres Remote: 192.168.4.33 Application: [unknown]
Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 163,164 754ms 0ms 7ms 0ms select ?;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Nov 25 17 163,162 754ms 0ms 18 2 0ms 0ms [ User: postgres - Total duration: 754ms - Times executed: 163164 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 743ms - Times executed: 162975 ]
[ Application: [unknown] - Total duration: 10ms - Times executed: 189 ]
-
select 1;
Date: 2025-11-25 17:56:13 Duration: 7ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
select 1;
Date: 2025-11-25 17:24:32 Duration: 6ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
select 1;
Date: 2025-11-25 17:47:12 Duration: 2ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
2 140,222 3m31s 0ms 27ms 1ms 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 Nov 25 17 140,222 3m31s 1ms [ User: postgres - Total duration: 3m31s - Times executed: 140222 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 3m31s - Times executed: 140222 ]
-
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 = '958' AND bsl.symbolid = s.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = '958' AND bim.TYPE = 'OUTBOUND' WHERE s.symbolid = '515840243157599300';
Date: 2025-11-25 17:42:42 Duration: 27ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = '958' AND bsl.symbolid = s.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = '958' AND bim.TYPE = 'OUTBOUND' WHERE s.symbolid = '515840233399600300';
Date: 2025-11-25 17:22:31 Duration: 23ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = '958' AND bsl.symbolid = s.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = '958' AND bim.TYPE = 'OUTBOUND' WHERE s.symbolid = '515840217487607300';
Date: 2025-11-25 17:20:52 Duration: 23ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
3 26,761 261ms 0ms 4ms 0ms set extra_float_digits = ?;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Nov 25 17 26,761 261ms 0ms [ User: postgres - Total duration: 261ms - Times executed: 26761 ]
[ Application: [unknown] - Total duration: 261ms - Times executed: 26761 ]
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:14:34 Duration: 4ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: [unknown] Bind query: yes
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:47:11 Duration: 3ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: [unknown] Bind query: yes
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:25:56 Duration: 2ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: [unknown] Bind query: yes
4 26,735 363ms 0ms 7ms 0ms set application_name = ?;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Nov 25 17 26,735 363ms 0ms [ User: postgres - Total duration: 363ms - Times executed: 26735 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 363ms - Times executed: 26735 ]
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:26:12 Duration: 7ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:43:08 Duration: 4ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:35:37 Duration: 3ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
5 19,395 45s899ms 0ms 25ms 2ms 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 Nov 25 17 19,395 45s899ms 2ms [ User: postgres - Total duration: 45s899ms - Times executed: 19395 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 45s899ms - Times executed: 19395 ]
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '558' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'ES35' OR dss.downloadersymbol = 'ES35') AND dss.enabled = 1;
Date: 2025-11-25 17:00:04 Duration: 25ms Database: acaweb_fx User: postgres Remote: 192.168.1.145 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '538' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'USA100' OR dss.downloadersymbol = 'USA100') AND dss.enabled = 1;
Date: 2025-11-25 17:22:33 Duration: 22ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '558' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'AUDSGD' OR dss.downloadersymbol = 'AUDSGD') AND dss.enabled = 1;
Date: 2025-11-25 17:15:04 Duration: 21ms Database: acaweb_fx User: postgres Remote: 192.168.1.20 Application: PostgreSQL JDBC Driver Bind query: yes
6 8,344 9s379ms 0ms 4ms 1ms insert into executionlogs (executionid, status, message, details, detailtype) values (null, ?, ?, null, null);Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Nov 25 17 8,344 9s379ms 1ms [ User: postgres - Total duration: 9s379ms - Times executed: 8344 ]
[ Application: [unknown] - Total duration: 9s379ms - Times executed: 8344 ]
-
INSERT INTO executionlogs (executionid, status, message, details, detailtype) VALUES (NULL, 'info', 'evaluating processid: 107, schedule: 1 * * * * Africa/Johannesburg', NULL, NULL);
Date: 2025-11-25 17:10:52 Duration: 4ms Database: socialmedia User: postgres Remote: 192.168.4.33 Application: [unknown]
-
INSERT INTO executionlogs (executionid, status, message, details, detailtype) VALUES (NULL, 'info', 'evaluating processid: 168, schedule: 0 8 * * 0 Africa/Johannesburg', NULL, NULL);
Date: 2025-11-25 17:00:59 Duration: 4ms Database: socialmedia User: postgres Remote: 192.168.4.33 Application: [unknown]
-
INSERT INTO executionlogs (executionid, status, message, details, detailtype) VALUES (NULL, 'info', 'running 144', NULL, NULL);
Date: 2025-11-25 17:00:57 Duration: 3ms Database: socialmedia User: postgres Remote: 192.168.4.33 Application: [unknown]
7 7,905 20s889ms 0ms 36ms 2ms 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 #7
Day Hour Count Duration Avg duration Nov 25 17 7,905 20s889ms 2ms [ User: postgres - Total duration: 20s889ms - Times executed: 7905 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 20s888ms - Times executed: 7904 ]
[ Application: [unknown] - Total duration: 0ms - Times executed: 1 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607218311402819301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607218311402819301' OR a.resultuid = '607218311402819301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:02:25 Duration: 36ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607215951125994301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607215951125994301' OR a.resultuid = '607215951125994301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:47:03 Duration: 36ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607215734315944301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607215734315944301' OR a.resultuid = '607215734315944301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:02:25 Duration: 35ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
8 6,294 6s726ms 0ms 16ms 1ms 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 #8
Day Hour Count Duration Avg duration Nov 25 17 6,294 6s726ms 1ms [ User: postgres - Total duration: 6s726ms - Times executed: 6294 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 6s726ms - Times executed: 6294 ]
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 17:00:00', '152.92', '153.52', '152.55', '153.3', '234', '515840233354856300', '0', '2025-11-25 17:16:06.373', '2025-11-25 17:15:58.48') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '152.92', high = '153.52', low = '152.55', close = '153.3', volume = '234', bsf = '0', sastdatetimewritten = '2025-11-25 17:16:06.373', sastdatetimereceived = '2025-11-25 17:15:58.48';
Date: 2025-11-25 17:16:06 Duration: 16ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 16:45:00', '12714.9', '12746.9', '12692.9', '12744.4', '813', '515840248176043300', '0', '2025-11-25 17:01:00.64', '2025-11-25 17:00:59.227') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '12714.9', high = '12746.9', low = '12692.9', close = '12744.4', volume = '813', bsf = '0', sastdatetimewritten = '2025-11-25 17:01:00.64', sastdatetimereceived = '2025-11-25 17:00:59.227';
Date: 2025-11-25 17:01:00 Duration: 14ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 16:45:00', '51.0265', '51.09', '50.697', '51.09', '4689', '515840230624306300', '0', '2025-11-25 17:00:57.568', '2025-11-25 17:00:57.103') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '51.0265', high = '51.09', low = '50.697', close = '51.09', volume = '4689', bsf = '0', sastdatetimewritten = '2025-11-25 17:00:57.568', sastdatetimereceived = '2025-11-25 17:00:57.103';
Date: 2025-11-25 17:00:57 Duration: 14ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
9 5,768 8s353ms 0ms 28ms 1ms 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 #9
Day Hour Count Duration Avg duration Nov 25 17 5,768 8s353ms 1ms [ User: postgres - Total duration: 8s353ms - Times executed: 5768 ]
[ Application: [unknown] - Total duration: 8s353ms - Times executed: 5768 ]
-
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 ('515840243258156300-1|45982.2083|45985.6667|45985|45986.5|195.623|194.568|193.156|192.895', 515840243258156300, 3.000000000000000000000000000000, 'Falling Wedge', 4, '2025-11-25 15:02:31'::timestamp without time zone, 1, 0.550976216069845814400000000000, - 1.000000000000000000000000000000, 0.769526844756944550200000000000, 0.244330923387478915500000000000, 0.533566079025600603600000000000, 194.016633575667242400000000000000, 195.075920581601394600000000000000, '2025-11-25 16:00:00'::timestamp without time zone, '2025-11-27 21:30:00'::timestamp without time zone, '2025-11-19 05:00:00'::timestamp without time zone, '2025-11-25 16:00:00'::timestamp without time zone, 194.019000000000005500000000000000, 193.359000000000008900000000000000, '2025-11-21 05:00:00'::timestamp without time zone, '2025-11-24 16:00:00'::timestamp without time zone, '2025-11-24 00:00:00'::timestamp without time zone, '2025-11-25 12:00:00'::timestamp without time zone, 195.622999999999990400000000000000, 194.568000000000012000000000000000, 193.156000000000005900000000000000, 192.895000000000010200000000000000, - 0.007249999999999879804000000000, - 0.030142857142856527280000000000, 2.586678233272524885000000000000, 0.613403790569322482400000000000, 'Continuation', 0.000000000000000000000000000000, '2025-11-25 16:00:00'::timestamp without time zone, 193.259999999999990900000000000000, 59, 0, 0.000000000000000000000000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:02:31 Duration: 28ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
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 ('5158402333736483000.126|45981.2083|45986.0208|45982.0417|45986.25|8566.1|8569.6|8378.6|8503.1', 515840233373648300, 8.000000000000000000000000000000, 'Ascending Triangle', 4, '2025-11-25 15:02:31'::timestamp without time zone, 1, 0.162171535770750385700000000000, 0.125984394191170967500000000000, 0.564731204493097327400000000000, 0.303667734101072561700000000000, 0.557339035225307144400000000000, 8607.736575728582466000000000000000, 8658.327781748595953000000000000000, '2025-11-25 16:30:00'::timestamp without time zone, '2025-11-28 10:15:00'::timestamp without time zone, '2025-11-18 06:00:00'::timestamp without time zone, '2025-11-25 16:30:00'::timestamp without time zone, 8448.799999999999272000000000000000, 8570.475000000000364000000000000000, '2025-11-20 05:00:00'::timestamp without time zone, '2025-11-25 00:30:00'::timestamp without time zone, '2025-11-21 01:00:00'::timestamp without time zone, '2025-11-25 06:00:00'::timestamp without time zone, 8566.100000000000364000000000000000, 8569.600000000000364000000000000000, 8378.600000000000364000000000000000, 8503.100000000000364000000000000000, 1.270408163265306145000000000000, 0.028225806451612902440000000000, 1.627224925190030591000000000000, 0.385456807771539011800000000000, 'Continuation', 1.125000000000000000000000000000, '2025-11-25 16:30:00'::timestamp without time zone, 8571.600000000000364000000000000000, 155, 0, 74.166666666666671400000000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:02:31 Duration: 22ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
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 ('515840249645860300-1|45986.4271|45986.5625|45986.4792|45986.6146|0.561|0.5616|0.5591|0.5595', 515840249645860300, 3.000000000000000000000000000000, 'Channel Up', 4, '2025-11-25 15:16:13'::timestamp without time zone, 1, 0.309485080652592559000000000000, - 1.000000000000000000000000000000, 1.000000000000000000000000000000, 0.121140970964016103600000000000, 0.590411517011876330000000000000, 0.561128449651565941400000000000, 0.561896279163758283200000000000, '2025-11-25 15:00:00'::timestamp without time zone, '2025-11-25 17:22:30'::timestamp without time zone, '2025-11-25 06:45:00'::timestamp without time zone, '2025-11-25 15:00:00'::timestamp without time zone, 0.559265000000000012100000000000, 0.560854999999999992400000000000, '2025-11-25 10:15:00'::timestamp without time zone, '2025-11-25 13:30:00'::timestamp without time zone, '2025-11-25 11:30:00'::timestamp without time zone, '2025-11-25 14:45:00'::timestamp without time zone, 0.560989999999999988600000000000, 0.561570000000000013600000000000, 0.559139999999999970400000000000, 0.559470000000000022800000000000, 0.000025384615384619421560000000, 0.000044615384615386535420000000, 2.456510806182571560000000000000, 0.592918542233484280300000000000, 'Continuation', 0.000000000000000000000000000000, '2025-11-25 15:00:00'::timestamp without time zone, 0.560579999999999967200000000000, 19, 0, 0.000000000000000000000000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:16:13 Duration: 20ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
10 4,038 7s546ms 0ms 18ms 1ms 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 #10
Day Hour Count Duration Avg duration Nov 25 17 4,038 7s546ms 1ms [ User: postgres - Total duration: 7s546ms - Times executed: 4038 ]
[ Application: [unknown] - Total duration: 7s546ms - Times executed: 4038 ]
-
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 (8.000000000000000000000000000000, - 1, 2, '2025-11-25 15:02:47'::timestamp without time zone, '2025-11-25 16:30:00', 0.624500000000001165300000000000, 7, 288, 43.637000000000000460000000000000, '2025-11-20 10:30:00', '2025-11-19 19:00:00', '2025-11-19 06:00:00', '2025-11-19 03:00:00', '2025-11-18 19:30:00', '2025-11-17 13:00:00', '2025-11-17 10:30:00', '', '', '', 552, 43.502349999999999850000000000000, '2025-11-25 16:30:00'::timestamp without time zone, '2025-11-25 16:30:00', 44.159999999999996590000000000000, 0.134649999999999991900000000000, - 1, 515840233925534300, 0.000000000000000000000000000000, 0.000000000000000000000000000000, '1900-01-01 00:00:00'::timestamp without time zone, 0, '|515840233925534300|43.637|2|2025-11-25 16:30:00|2025-11-25 16:30:00|-1|-1', 44.498809999999998860000000000000, 0.861809999999998410600000000000, 2, '2025-11-17 10:30:00', 44.759999999999998010000000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:02:47 Duration: 18ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
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 (4.000000000000000000000000000000, - 1, 1, '2025-11-25 15:01:14'::timestamp without time zone, '', 0.500000000000000000000000000000, 4, 82, 0.523449999999999970800000000000, '2025-11-25 12:00:00', '2025-11-24 09:00:00', '2025-11-20 07:00:00', '2025-11-20 02:00:00', '', '', '', '', '', '', 205, 0.523783499999999957400000000000, '2025-11-25 16:00:00'::timestamp without time zone, '2025-11-25 16:00:00', 0.000000000000000000000000000000, 0.000333500000000003281700000000, - 1, 515840245860902300, 0.000000000000000000000000000000, 0.000000000000000000000000000000, '1900-01-01 00:00:00'::timestamp without time zone, 0, '|515840245860902300|0.52345|1|2025-11-25 16:00:00|-1|-1', 0.000000000000000000000000000000, 0.000000000000000000000000000000, 3, '2025-11-20 02:00:00', 0.523930000000000006800000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:01:14 Duration: 12ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
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 (6.000000000000000000000000000000, 1, 2, '2025-11-25 15:02:55'::timestamp without time zone, '', 0.000000000000000000000000000000, 3, 48, 61.792999999999999260000000000000, '2025-11-24 11:00:00', '2025-11-21 16:00:00', '2025-11-21 12:00:00', '', '', '', '', '', '', '', 44, 61.736649999999997360000000000000, '2025-11-25 16:00:00'::timestamp without time zone, '2025-11-25 16:00:00', 61.670999999999999380000000000000, 0.058849999999999999540000000000, - 1, 515840249413895300, 60.769400000000004520000000000000, 61.332900000000002200000000000000, '2025-11-25 16:00:00'::timestamp without time zone, 44, '|515840249413895300|61.793|2|2025-11-25 16:00:00|-1|1', 62.830069999999999200000000000000, 1.159069999999999823000000000000, 1, '2025-11-21 12:00:00', 63.396000000000000800000000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:02:56 Duration: 12ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
11 3,868 18s208ms 0ms 52ms 4ms select t.pricedatetime as pricedatetime, t.open as open, t.high as high, t.low as low, t.close "..." close, t.volume as volume, t.bsf as bsf from t60 t where t.symbolid = ? and (bsf = ? or bsf is null) and pricedatetime >= ? and pricedatetime <= ? order by pricedatetime desc limit ?;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Nov 25 17 3,868 18s208ms 4ms [ User: postgres - Total duration: 18s208ms - Times executed: 3868 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 18s208ms - Times executed: 3868 ]
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840233385428300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:00:03 Duration: 52ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840233929139300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:58:07 Duration: 51ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840216981120300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:00:00 Duration: 46ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
12 3,843 3s79ms 0ms 16ms 0ms update patternresultsrelevance set relevant = ?, saxo_relevant = ?, notrelevantpricedatetime = ?, reason = ? where uniqueindex = ? and relevant = ?;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Nov 25 17 3,843 3s79ms 0ms [ User: postgres - Total duration: 3s79ms - Times executed: 3843 ]
[ Application: [unknown] - Total duration: 3s79ms - Times executed: 3843 ]
-
UPDATE patternresultsrelevance SET relevant = 0, saxo_relevant = 0, notrelevantpricedatetime = '2025-11-25 16:00:00', reason = 'Price has moved too far in the wrong direction' WHERE uniqueIndex = '|515840243931277300|381.792|2|2025-11-25 14:00:00|-1|1' and relevant = 1;
Date: 2025-11-25 17:02:50 Duration: 16ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
UPDATE patternresultsrelevance SET relevant = 0, saxo_relevant = 0, notrelevantpricedatetime = '2025-11-25 16:30:00', reason = 'Emerging pattern broke out in the wrong direction.' WHERE uniqueIndex = '515840233485993300-1|45981.7292|45986.6042|45982.7292|45986.6458|9.185|9.069|8.936|9.027' and relevant = 1;
Date: 2025-11-25 17:00:49 Duration: 6ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
UPDATE patternresultsrelevance SET relevant = 0, saxo_relevant = 0, notrelevantpricedatetime = '2025-11-25 16:00:00', reason = 'Price has moved too far in the wrong direction' WHERE uniqueIndex = '|515840246000231300|61.63|2|2025-11-24 21:00:00|2025-11-24 21:00:00|-1|-1' and relevant = 1;
Date: 2025-11-25 17:01:03 Duration: 6ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
13 3,634 2s602ms 0ms 8ms 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 #13
Day Hour Count Duration Avg duration Nov 25 17 3,634 2s602ms 0ms [ User: postgres - Total duration: 2s602ms - Times executed: 3634 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 2s602ms - Times executed: 3634 ]
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 16:30:00', '119.971', '120.011', '119.756', '119.894', '9908', '515840243914483300', '0', '2025-11-25 17:00:05.14', '2025-11-25 17:00:05.035') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '119.971', high = '120.011', low = '119.756', close = '119.894', volume = '9908', bsf = '0', sastdatetimewritten = '2025-11-25 17:00:05.14', sastdatetimereceived = '2025-11-25 17:00:05.035';
Date: 2025-11-25 17:00:05 Duration: 8ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 17:00:00', '29.83', '29.88', '29.73', '29.84', '1186', '515840246009529300', '0', '2025-11-25 17:30:05.607', '2025-11-25 17:30:05.607') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '29.83', high = '29.88', low = '29.73', close = '29.84', volume = '1186', bsf = '0', sastdatetimewritten = '2025-11-25 17:30:05.607', sastdatetimereceived = '2025-11-25 17:30:05.607';
Date: 2025-11-25 17:30:05 Duration: 6ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 17:00:00', '99.847', '99.862', '99.762', '99.777', '1293', '515840233392359300', '0', '2025-11-25 17:30:04.158', '2025-11-25 17:30:04.158') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '99.847', high = '99.862', low = '99.762', close = '99.777', volume = '1293', bsf = '0', sastdatetimewritten = '2025-11-25 17:30:04.158', sastdatetimereceived = '2025-11-25 17:30:04.158';
Date: 2025-11-25 17:30:04 Duration: 5ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
14 3,427 3s688ms 0ms 25ms 1ms with rar_max as ( select resultuid from relevance_keylevels_results order by resultuid desc limit ? ) select case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as ruid, s.symbolid as sid, s.symbol as sym, longname, shortname, exchange as e, timegranularity as tg, a.patternid as pid, a.direction as d, a.patternprice as pp, atbaridentified as pet, case when (x9 != ?) then x9 when (x8 != ?) then x8 when (x7 != ?) then x7 when (x6 != ?) then x6 when (x5 != ?) then x5 when (x4 != ?) then x4 when (x3 != ?) then x3 when (x2 != ?) then x2 end as pst, patternprice as patp, x0, x1, x2, case when (x3 != ?) then x3 else ? end as x3, case when (x4 != ?) then x4 else ? end as x4, case when (x5 != ?) then x5 else ? end as x5, case when (x6 != ?) then x6 else ? end as x6, case when (x7 != ?) then x7 else ? end as x7, case when (x8 != ?) then x8 else ? end as x8, errormargin as erm, breakoutprice as pe, breakoutbars as be, breakout, atbaridentified as atbar, atpriceidentified as atprice, patternlengthbars as l, bandwidth as bw, qtytp as qtp, p.patternname as patternname, dtt.absolutetimezoneoffset as tzos, dtt.timezone as timezone, approachingtimestamp as apt, approachingregion as apr, predictionpricefrom as ppf, predictionpriceto as ppt, predictiontimefrom as ptf, predictiontimebars as ptb, furthestprice as fp, newlevels.filtered, a.uniquepointsvalue as upv, 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 keylevels_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 hrspatterns p on a.patternid = p.patternid inner join rar_max rm on ? = ? left outer join relevance_keylevels_results rar on a.resultuid = rar.resultuid left join lateral calc_kl_signal_filter (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 #14
Day Hour Count Duration Avg duration Nov 25 17 3,427 3s688ms 1ms [ User: postgres - Total duration: 3s688ms - Times executed: 3427 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 3s688ms - Times executed: 3427 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ) SELECT CASE WHEN a.old_resultuid = '607215492450803303' THEN a.old_resultuid ELSE a.resultuid END AS ruid, s.symbolid AS sid, s.symbol AS sym, longname, shortname, Exchange AS e, timegranularity AS tg, a.PatternID AS pid, a.direction AS d, a.patternprice AS pp, atbaridentified AS pet, CASE WHEN (x9 != '') THEN x9 WHEN (x8 != '') THEN x8 WHEN (x7 != '') THEN x7 WHEN (x6 != '') THEN x6 WHEN (x5 != '') THEN x5 WHEN (x4 != '') THEN x4 WHEN (x3 != '') THEN x3 WHEN (x2 != '') THEN x2 END AS pst, PatternPrice AS patp, x0, x1, x2, CASE WHEN (x3 != '') THEN x3 ELSE '0' END AS x3, CASE WHEN (x4 != '') THEN x4 ELSE '0' END AS x4, CASE WHEN (x5 != '') THEN x5 ELSE '0' END AS x5, CASE WHEN (x6 != '') THEN x6 ELSE '0' END AS x6, CASE WHEN (x7 != '') THEN x7 ELSE '0' END AS x7, CASE WHEN (x8 != '') THEN x8 ELSE '0' END AS x8, errorMargin AS erm, breakoutprice AS pE, breakoutbars AS be, breakout, atbaridentified AS atBar, atpriceidentified AS atPrice, PatternLengthBars AS l, Bandwidth AS bw, QtyTP AS qtp, p.patternname AS patternname, dtt.absolutetimezoneoffset AS tzOs, dtt.timezone AS timezone, approachingtimestamp AS apt, approachingregion AS apr, predictionpricefrom AS ppf, predictionpriceto AS ppt, predictiontimefrom AS ptf, predictiontimebars AS ptb, furthestprice AS fp, newLevels.filtered, a.uniquepointsvalue AS upv, CASE WHEN rar.age IS NOT NULL THEN rar.age WHEN a.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM keylevels_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 hrspatterns p ON a.patternid = p.patternid INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN relevance_keylevels_results rar ON a.resultuid = rar.resultuid LEFT JOIN LATERAL calc_kl_signal_filter (a.resultuid) newLevels on true LEFT JOIN currencypips cps on cps.symbol = s.symbol WHERE (a.old_resultuid = '607215492450803303' OR a.resultuid = '607215492450803303') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:15:04 Duration: 25ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ) SELECT CASE WHEN a.old_resultuid = '607219489207888303' THEN a.old_resultuid ELSE a.resultuid END AS ruid, s.symbolid AS sid, s.symbol AS sym, longname, shortname, Exchange AS e, timegranularity AS tg, a.PatternID AS pid, a.direction AS d, a.patternprice AS pp, atbaridentified AS pet, CASE WHEN (x9 != '') THEN x9 WHEN (x8 != '') THEN x8 WHEN (x7 != '') THEN x7 WHEN (x6 != '') THEN x6 WHEN (x5 != '') THEN x5 WHEN (x4 != '') THEN x4 WHEN (x3 != '') THEN x3 WHEN (x2 != '') THEN x2 END AS pst, PatternPrice AS patp, x0, x1, x2, CASE WHEN (x3 != '') THEN x3 ELSE '0' END AS x3, CASE WHEN (x4 != '') THEN x4 ELSE '0' END AS x4, CASE WHEN (x5 != '') THEN x5 ELSE '0' END AS x5, CASE WHEN (x6 != '') THEN x6 ELSE '0' END AS x6, CASE WHEN (x7 != '') THEN x7 ELSE '0' END AS x7, CASE WHEN (x8 != '') THEN x8 ELSE '0' END AS x8, errorMargin AS erm, breakoutprice AS pE, breakoutbars AS be, breakout, atbaridentified AS atBar, atpriceidentified AS atPrice, PatternLengthBars AS l, Bandwidth AS bw, QtyTP AS qtp, p.patternname AS patternname, dtt.absolutetimezoneoffset AS tzOs, dtt.timezone AS timezone, approachingtimestamp AS apt, approachingregion AS apr, predictionpricefrom AS ppf, predictionpriceto AS ppt, predictiontimefrom AS ptf, predictiontimebars AS ptb, furthestprice AS fp, newLevels.filtered, a.uniquepointsvalue AS upv, CASE WHEN rar.age IS NOT NULL THEN rar.age WHEN a.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM keylevels_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 hrspatterns p ON a.patternid = p.patternid INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN relevance_keylevels_results rar ON a.resultuid = rar.resultuid LEFT JOIN LATERAL calc_kl_signal_filter (a.resultuid) newLevels on true LEFT JOIN currencypips cps on cps.symbol = s.symbol WHERE (a.old_resultuid = '607219489207888303' OR a.resultuid = '607219489207888303') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:42:42 Duration: 20ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ) SELECT CASE WHEN a.old_resultuid = '607219730631929303' THEN a.old_resultuid ELSE a.resultuid END AS ruid, s.symbolid AS sid, s.symbol AS sym, longname, shortname, Exchange AS e, timegranularity AS tg, a.PatternID AS pid, a.direction AS d, a.patternprice AS pp, atbaridentified AS pet, CASE WHEN (x9 != '') THEN x9 WHEN (x8 != '') THEN x8 WHEN (x7 != '') THEN x7 WHEN (x6 != '') THEN x6 WHEN (x5 != '') THEN x5 WHEN (x4 != '') THEN x4 WHEN (x3 != '') THEN x3 WHEN (x2 != '') THEN x2 END AS pst, PatternPrice AS patp, x0, x1, x2, CASE WHEN (x3 != '') THEN x3 ELSE '0' END AS x3, CASE WHEN (x4 != '') THEN x4 ELSE '0' END AS x4, CASE WHEN (x5 != '') THEN x5 ELSE '0' END AS x5, CASE WHEN (x6 != '') THEN x6 ELSE '0' END AS x6, CASE WHEN (x7 != '') THEN x7 ELSE '0' END AS x7, CASE WHEN (x8 != '') THEN x8 ELSE '0' END AS x8, errorMargin AS erm, breakoutprice AS pE, breakoutbars AS be, breakout, atbaridentified AS atBar, atpriceidentified AS atPrice, PatternLengthBars AS l, Bandwidth AS bw, QtyTP AS qtp, p.patternname AS patternname, dtt.absolutetimezoneoffset AS tzOs, dtt.timezone AS timezone, approachingtimestamp AS apt, approachingregion AS apr, predictionpricefrom AS ppf, predictionpriceto AS ppt, predictiontimefrom AS ptf, predictiontimebars AS ptb, furthestprice AS fp, newLevels.filtered, a.uniquepointsvalue AS upv, CASE WHEN rar.age IS NOT NULL THEN rar.age WHEN a.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM keylevels_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 hrspatterns p ON a.patternid = p.patternid INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN relevance_keylevels_results rar ON a.resultuid = rar.resultuid LEFT JOIN LATERAL calc_kl_signal_filter (a.resultuid) newLevels on true LEFT JOIN currencypips cps on cps.symbol = s.symbol WHERE (a.old_resultuid = '607219730631929303' OR a.resultuid = '607219730631929303') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:15:59 Duration: 18ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
15 2,597 1s599ms 0ms 16ms 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 #15
Day Hour Count Duration Avg duration Nov 25 17 2,597 1s599ms 0ms [ User: postgres - Total duration: 1s599ms - Times executed: 2597 ]
[ Application: [unknown] - Total duration: 1s599ms - Times executed: 2597 ]
-
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 (2.000000000000000000000000000000, '3 Point Extension', '2025-11-25 15:16:00'::timestamp without time zone, - 1, '2025-11-25 10:00:00'::timestamp without time zone, '2025-11-25 17:00:00'::timestamp without time zone, 58.655000000000001140000000000000, 57.174999999999997160000000000000, 3, - 1.000000000000000000000000000000, '1899-12-29 00:00:00'::timestamp without time zone, - 1.000000000000000000000000000000, '1899-12-29 00:00:00'::timestamp without time zone, 58.655000000000001140000000000000, '2025-11-25 10:00:00'::timestamp without time zone, 58.284999999999996590000000000000, '2025-11-25 11:00:00'::timestamp without time zone, 58.765000000000000570000000000000, '2025-11-25 13:15:00'::timestamp without time zone, 0.421521502351212218300000000000, - 1.000000000000000000000000000000, 0.397441152850557311000000000000, 13, 58.284999999999996590000000000000, 58.468343685423995740000000000000, 57.988343685423991760000000000000, 58.387647338655995100000000000000, 58.154430568239995120000000000000, 58.524999999999998580000000000000, 58.581656314576001420000000000000, 515840230545597300, 0.554398148148132818800000000000, 'CD=1.272*BC (1.297) ', 0, '3 Point Extension|-1|2025-11-25 10:00:00|58.655|57.175|3|13|CD=1.272*BC (1.297)|0|515840230545597300|1899-12-29 00:00:00|1899-12-29 00:00:00|2025-11-25 10:00:00|2025-11-25 11:00:00|2025-11-25 13:15:00', 1, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:16:00 Duration: 16ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
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 (2.000000000000000000000000000000, 'ABCD', '2025-11-25 15:00:15'::timestamp without time zone, 1, '2025-11-25 12:15:00'::timestamp without time zone, '2025-11-25 16:45:00'::timestamp without time zone, 1.410870000000000068000000000000, - 1.000000000000000000000000000000, 4, - 1.000000000000000000000000000000, '1899-12-29 00:00:00'::timestamp without time zone, 1.412430000000000074000000000000, '2025-11-25 14:00:00'::timestamp without time zone, 1.410080000000000000000000000000, '2025-11-25 15:30:00'::timestamp without time zone, 1.411839999999999984000000000000, '2025-11-25 16:45:00'::timestamp without time zone, 1.409489999999999910000000000000, '1899-12-29 00:00:00'::timestamp without time zone, 0.797031539888686801900000000000, - 1.000000000000000000000000000000, 18.323668925592979660000000000000, 17, 1.411839999999999984000000000000, 1.410942379873445063000000000000, 1.413292379873445137000000000000, 1.411337455737829982000000000000, 1.412479246176324921000000000000, 1.410664999999999836000000000000, 1.410387620126554831000000000000, 515840243872417300, 0.405936920222626396200000000000, 'BC=0.786*AB (0.749) ', 0, 'ABCD|1|2025-11-25 12:15:00|1.41087|-1|4|17|BC=0.786*AB (0.749)|0|515840243872417300|1899-12-29 00:00:00|2025-11-25 14:00:00|2025-11-25 15:30:00|2025-11-25 16:45:00|1899-12-29 00:00:00', - 1, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:00:15 Duration: 11ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
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 (3.000000000000000000000000000000, 'ABCD', '2025-11-25 15:01:06'::timestamp without time zone, - 1, '2025-11-20 13:00:00'::timestamp without time zone, '2025-11-25 16:00:00'::timestamp without time zone, 19.866019999999998900000000000000, - 1.000000000000000000000000000000, 4, - 1.000000000000000000000000000000, '1899-12-29 00:00:00'::timestamp without time zone, 19.756119999999999240000000000000, '2025-11-20 17:00:00'::timestamp without time zone, 20.083619999999999800000000000000, '2025-11-21 18:00:00'::timestamp without time zone, 19.873319999999999650000000000000, '2025-11-25 14:00:00'::timestamp without time zone, 20.200820000000000220000000000000, '1899-12-29 00:00:00'::timestamp without time zone, 0.886737206145995049400000000000, - 1.000000000000000000000000000000, 76.434236825909593450000000000000, 94, 19.873319999999999650000000000000, 19.998413868700751550000000000000, 19.670913868700750980000000000000, 19.943355423770498190000000000000, 19.784233564788749500000000000000, 20.037069999999999940000000000000, 20.075726131299248320000000000000, 500991628218508200, 0.226525587708010012200000000000, 'BC=0.618*AB (0.642) ', 0, 'ABCD|-1|2025-11-20 13:00:00|19.86602|-1|4|94|BC=0.618*AB (0.642)|0|500991628218508200|1899-12-29 00:00:00|2025-11-20 17:00:00|2025-11-21 18:00:00|2025-11-25 14:00:00|1899-12-29 00:00:00', - 1, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:01:07 Duration: 10ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
16 2,294 1s715ms 0ms 10ms 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 #16
Day Hour Count Duration Avg duration Nov 25 17 2,294 1s715ms 0ms [ User: postgres - Total duration: 1s715ms - Times executed: 2294 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1s715ms - Times executed: 2294 ]
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 16:00:00', '69.88', '70.62', '69.32', '70.14', '1230', '515840247961593300', '0', '2025-11-25 17:00:58.989', '2025-11-25 17:00:58.438') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '69.88', high = '70.62', low = '69.32', close = '70.14', volume = '1230', bsf = '0', sastdatetimewritten = '2025-11-25 17:00:58.989', sastdatetimereceived = '2025-11-25 17:00:58.438';
Date: 2025-11-25 17:00:59 Duration: 10ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 16:00:00', '6704.07', '6715.58', '6660.33', '6704.2', '8106', '515840238284384300', '0', '2025-11-25 17:00:07.614', '2025-11-25 17:00:07.614') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '6704.07', high = '6715.58', low = '6660.33', close = '6704.2', volume = '8106', bsf = '0', sastdatetimewritten = '2025-11-25 17:00:07.614', sastdatetimereceived = '2025-11-25 17:00:07.614';
Date: 2025-11-25 17:00:07 Duration: 8ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ('2025-11-25 16:00:00', '1.30159', '1.30205', '1.30114', '1.30125', '5786', '515840217492473300', '0', '2025-11-25 17:00:02.782', '2025-11-25 17:00:02.782') ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = '1.30159', high = '1.30205', low = '1.30114', close = '1.30125', volume = '5786', bsf = '0', sastdatetimewritten = '2025-11-25 17:00:02.782', sastdatetimereceived = '2025-11-25 17:00:02.782';
Date: 2025-11-25 17:00:02 Duration: 7ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
17 1,212 5s129ms 0ms 41ms 4ms 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 #17
Day Hour Count Duration Avg duration Nov 25 17 1,212 5s129ms 4ms [ User: postgres - Total duration: 5s129ms - Times executed: 1212 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 5s129ms - Times executed: 1212 ]
-
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 = 'HOTFOREX' AND dss.downloadfrequency = '15' AND dss.symbolid = t.symbolid AND s.symbolid = dss.symbolid AND dss.enabled = 1 AND s.deleted = 0 AND dss.downloadersymbol IN ('NZDCAD', 'NZDUSD', 'MCARD', 'EURNZD', 'LLOY', 'EURCHF', 'EURDKK', 'MSFT', 'HLT', 'MCDON', 'LVMH.K', 'Mapfre.K', 'PFIZER', 'IBM', 'EURCAD', 'EURUSD', 'EURNOK', 'HSBCL', 'GBPCAD', 'GBPUSD', 'GE', 'GOOGLE', 'INTEL', 'Netflix', 'EURGBP', 'EURPLN', 'EURJPY', 'GBPCHF', 'NETH25', 'EURHUF', 'ILMN', 'NZDCHF', 'Palladium', 'GBPNZD', 'GS', 'Iberdrola.K', 'FRA40', 'GBPJPY', 'GBPAUD', 'NZDJPY', 'GBPZAR', 'Lufthansa.K', 'JPN225') AND t.pricedatetime > now() - INTERVAL '2 days') AS ranked_candles_table WHERE rn = 1;
Date: 2025-11-25 17:00:59 Duration: 41ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 'HOTFOREX' AND dss.downloadfrequency = '15' AND dss.symbolid = t.symbolid AND s.symbolid = dss.symbolid AND dss.enabled = 1 AND s.deleted = 0 AND dss.downloadersymbol IN ('AMEX', 'AMAZON', 'APPLE', 'ANGLO', 'CHEVRON', 'AUDCHF', 'CISCO', 'AUS200', 'Coffee', 'Cocoa', 'AUDNZD', 'CADCHF', 'BOA', 'COKE', 'Adidas.K', 'BPLON', 'Daimler.K', 'Copper', 'CHFJPY', 'BBVA.K', 'Danone.K', 'CADJPY', 'AUDCAD', 'BARC', 'AUDUSD', 'BOEING', 'ALIBABA', 'EBAY', 'AUDJPY', 'EURAUD', 'ALCOA', 'Bayer.K') AND t.pricedatetime > now() - INTERVAL '2 days') AS ranked_candles_table WHERE rn = 1;
Date: 2025-11-25 17:00:57 Duration: 40ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 'HOTFOREX' AND dss.downloadfrequency = '15' AND dss.symbolid = t.symbolid AND s.symbolid = dss.symbolid AND dss.enabled = 1 AND s.deleted = 0 AND dss.downloadersymbol IN ('USDDKK', 'USDHKD', 'USDTRY', 'UK100', 'UKOIL', 'USDHUF', 'Telefon.K', 'SPA35', 'USA30', 'Platinum', 'QCOM', 'USA100', 'SUI20', 'Sugar', 'Santander.K', 'USDCHF', 'USDCNH', 'VOD', 'TESCO', 'RollsRoyce', 'USDCZK', 'Tesla', 'RIO', 'TEVA', 'USDCAD') AND t.pricedatetime > now() - INTERVAL '2 days') AS ranked_candles_table WHERE rn = 1;
Date: 2025-11-25 17:01:01 Duration: 29ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
18 862 1s370ms 0ms 13ms 1ms select s.symbolid, dss.downloadfrequency, dss.downloadersymbol from downloadersymbolsettings dss inner join symbols s on dss.symbolid = s.symbolid where dss.classname = ? and s.deleted = ? and dss.enabled = ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Nov 25 17 862 1s370ms 1ms [ User: postgres - Total duration: 1s370ms - Times executed: 862 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1s370ms - Times executed: 862 ]
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol FROM downloadersymbolsettings dss INNER JOIN symbols s ON dss.symbolid = s.symbolid WHERE dss.classname = 'ATFX' AND s.deleted = 0 AND dss.enabled = 1;
Date: 2025-11-25 17:00:05 Duration: 13ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol FROM downloadersymbolsettings dss INNER JOIN symbols s ON dss.symbolid = s.symbolid WHERE dss.classname = 'HOTFOREX' AND s.deleted = 0 AND dss.enabled = 1;
Date: 2025-11-25 17:00:57 Duration: 12ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol FROM downloadersymbolsettings dss INNER JOIN symbols s ON dss.symbolid = s.symbolid WHERE dss.classname = 'ICMARKETS' AND s.deleted = 0 AND dss.enabled = 1;
Date: 2025-11-25 17:15:59 Duration: 9ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
19 862 170ms 0ms 0ms 0ms select downloadersymbol, spike_threshold from price_datafeed_spike_threshold where classname = ?;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Nov 25 17 862 170ms 0ms [ User: postgres - Total duration: 170ms - Times executed: 862 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 170ms - Times executed: 862 ]
-
SELECT downloadersymbol, spike_threshold FROM price_datafeed_spike_threshold WHERE classname = 'ICMARKETS';
Date: 2025-11-25 17:47:30 Duration: 0ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT downloadersymbol, spike_threshold FROM price_datafeed_spike_threshold WHERE classname = 'MILLENNIUMPF';
Date: 2025-11-25 17:00:57 Duration: 0ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT downloadersymbol, spike_threshold FROM price_datafeed_spike_threshold WHERE classname = 'ATFX';
Date: 2025-11-25 17:46:03 Duration: 0ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
20 845 423ms 0ms 5ms 0ms select case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as resultuid, s.symbol, pattern as patternname, timegranularity as interval, patternlengthbars as length, patternendtime, direction, breakout, predictiontimeto, predictionpricefrom, predictionpriceto, patternstartprice, resy1, supporty1, dtt.timezone, cps.pip, newlevels.profit 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 left join currencypips cps on cps.symbol = s.symbol left join lateral calc_cp_signal (a.resultuid) newlevels on true where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Nov 25 17 845 423ms 0ms [ User: postgres - Total duration: 423ms - Times executed: 845 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 423ms - Times executed: 845 ]
-
SELECT CASE WHEN a.old_resultuid = '607215500216806301' THEN a.old_resultuid ELSE a.resultuid END as resultuid, s.symbol, pattern as patternname, timegranularity as interval, patternlengthbars AS length, patternendtime, direction, breakout, predictiontimeto, predictionpricefrom, predictionpriceto, patternStartPrice, resy1, supporty1, dtt.timezone, cps.pip, newLevels.profit 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 LEFT JOIN currencypips cps on cps.symbol = s.symbol LEFT JOIN LATERAL calc_cp_signal (a.resultuid) newLevels on true WHERE (a.old_resultuid = '607215500216806301' OR a.resultuid = '607215500216806301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:10:51 Duration: 5ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT CASE WHEN a.old_resultuid = '607215500216806301' THEN a.old_resultuid ELSE a.resultuid END as resultuid, s.symbol, pattern as patternname, timegranularity as interval, patternlengthbars AS length, patternendtime, direction, breakout, predictiontimeto, predictionpricefrom, predictionpriceto, patternStartPrice, resy1, supporty1, dtt.timezone, cps.pip, newLevels.profit 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 LEFT JOIN currencypips cps on cps.symbol = s.symbol LEFT JOIN LATERAL calc_cp_signal (a.resultuid) newLevels on true WHERE (a.old_resultuid = '607215500216806301' OR a.resultuid = '607215500216806301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:11:13 Duration: 4ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT CASE WHEN a.old_resultuid = '607219604600928301' THEN a.old_resultuid ELSE a.resultuid END as resultuid, s.symbol, pattern as patternname, timegranularity as interval, patternlengthbars AS length, patternendtime, direction, breakout, predictiontimeto, predictionpricefrom, predictionpriceto, patternStartPrice, resy1, supporty1, dtt.timezone, cps.pip, newLevels.profit 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 LEFT JOIN currencypips cps on cps.symbol = s.symbol LEFT JOIN LATERAL calc_cp_signal (a.resultuid) newLevels on true WHERE (a.old_resultuid = '607219604600928301' OR a.resultuid = '607219604600928301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:47:03 Duration: 4ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 15s316ms 21s93ms 18s35ms 4 1m12s select updateageforrelevantresults ();Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Nov 25 17 4 1m12s 18s35ms [ User: postgres - Total duration: 1m12s - Times executed: 4 ]
[ Application: psql - Total duration: 1m12s - Times executed: 4 ]
-
select updateageforrelevantresults ();
Date: 2025-11-25 17:02:23 Duration: 21s93ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateageforrelevantresults ();
Date: 2025-11-25 17:17:22 Duration: 19s730ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateageforrelevantresults ();
Date: 2025-11-25 17:32:18 Duration: 16s1ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
2 427ms 38s529ms 9s394ms 526 1h22m21s with rar_max as ( select resultuid from relevance_autochartist_results order by resultuid desc limit ? ), ar as ( select a.*, rr.age, rr.relevant from autochartist_results a left outer join relevance_autochartist_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_autochartist_results) end ), all_results as ( select ar.resultuid as resultuid, ar.direction as direction, ar.predictiontimeto as predictiontimeto, ar.predictionpricefrom as predictionpricefrom, ar.predictionpriceto as predictionpriceto, cp.pip as pip, 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, ar.pattern as pattern_name, ar.breakout as breakout, ar.patternendtime as identified, dtt.timezone as timezone, ar.patternlengthbars as length, g.basegroupname, newlevels.profit, newlevels.stop, newlevels.filtered, case when ar.age is not null then ar.age when ar.resultuid <= rm.resultuid then ? else ? end as age, case when ar.relevant is not null then ar.relevant when ar.resultuid <= rm.resultuid then ? else ? end as relevant from ar inner join symbols s on ar.symbolid = s.symbolid and s.nonliquid = ? inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = s.symbolid inner join symbolgroup sg on bsl.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 downloadersymbolsettings dss on sg.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 currencypips cp on s.symbol = cp.symbol left join lateral calc_cp_signal (ar.resultuid) newlevels on true left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where ar.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (ar.simulation = ? or ar.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or ar.pattern in (...)) and (? = ? or (? = ? and ar.breakout >= ?) or (? = ? and ar.breakout < ?)) and (? = ? or ar.patternlengthbars <= ?) and newlevels.filtered = false and ar.patternstarttime >= 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;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Nov 25 17 526 1h22m21s 9s394ms [ User: postgres - Total duration: 1h22m21s - Times executed: 526 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1h18m41s - Times executed: 514 ]
[ Application: [unknown] - Total duration: 3m39s - Times executed: 12 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:02:58 Duration: 38s529ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:02:58 Duration: 37s244ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END ), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, 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, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.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 downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR ar.pattern in ('')) AND ('0' = 0 OR ('0' = 1 AND ar.breakout >= 0) OR ('0' = 2 AND ar.breakout < 0)) AND ('700' = 0 OR ar.patternlengthbars <= '700') and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:22:40 Duration: 30s510ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
3 117ms 24s600ms 7s743ms 525 1h7m45s 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 #3
Day Hour Count Duration Avg duration Nov 25 17 525 1h7m45s 7s743ms [ User: postgres - Total duration: 1h7m45s - Times executed: 525 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1h3m53s - Times executed: 513 ]
[ Application: [unknown] - Total duration: 3m51s - Times executed: 12 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ), 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 = 't' 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 11 ELSE 0 END as age, CASE WHEN kr.relevant IS NOT NULL THEN kr.relevant WHEN kr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM kr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = kr.symbolid INNER JOIN symbols s ON bsl.symbolid = s.symbolid AND s.nonliquid = 0 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 = 3 INNER JOIN rar_max rm ON 1 = 1 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 = 'OUTBOUND' WHERE kr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (kr.simulation = 0 OR kr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR p.patternname in ('')) AND ('2' = 0 OR kr.patternclassid in ('1', '2')) AND ('400' = 0 OR kr.patternlengthbars <= '400') AND kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC LIMIT 200;
Date: 2025-11-25 17:16:22 Duration: 24s600ms Database: acaweb_fx User: postgres Remote: 182.165.1.42 Application: [unknown] Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ), 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 = 't' 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 11 ELSE 0 END as age, CASE WHEN kr.relevant IS NOT NULL THEN kr.relevant WHEN kr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM kr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = kr.symbolid INNER JOIN symbols s ON bsl.symbolid = s.symbolid AND s.nonliquid = 0 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 = 3 INNER JOIN rar_max rm ON 1 = 1 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 = 'OUTBOUND' WHERE kr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (kr.simulation = 0 OR kr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR p.patternname in ('')) AND ('2' = 0 OR kr.patternclassid in ('1', '2')) AND ('400' = 0 OR kr.patternlengthbars <= '400') AND kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC LIMIT 200;
Date: 2025-11-25 17:01:21 Duration: 24s572ms Database: acaweb_fx User: postgres Remote: 182.165.1.42 Application: [unknown] Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ), 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 = 't' 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 11 ELSE 0 END as age, CASE WHEN kr.relevant IS NOT NULL THEN kr.relevant WHEN kr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM kr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '667' AND bsl.symbolid = kr.symbolid INNER JOIN symbols s ON bsl.symbolid = s.symbolid AND s.nonliquid = 0 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 = 3 INNER JOIN rar_max rm ON 1 = 1 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 = 'OUTBOUND' WHERE kr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (kr.simulation = 0 OR kr.simulation IS NULL) AND ('0' = 0 OR s.timegranularity in ('0')) AND ('0' = 0 OR s.exchange in ('')) AND ('0' = 0 OR coalesce(bim.code, s.symbol) in ('')) AND ('0' = 0 OR p.patternname in ('')) AND ('0' = 0 OR kr.patternclassid in ('0')) AND ('0' = 0 OR kr.patternlengthbars <= '0') AND kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('0' = 0 OR age <= '0') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC LIMIT 200;
Date: 2025-11-25 17:11:18 Duration: 23s685ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
4 3s983ms 10s320ms 6s23ms 8 48s186ms select updateresultsmaterializedview ();Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Nov 25 17 8 48s186ms 6s23ms [ User: postgres - Total duration: 48s186ms - Times executed: 8 ]
[ Application: psql - Total duration: 48s186ms - Times executed: 8 ]
-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:02:33 Duration: 10s320ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:32:25 Duration: 7s648ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select updateresultsmaterializedview ();
Date: 2025-11-25 17:47:23 Duration: 6s183ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
5 5s131ms 6s704ms 5s974ms 6 35s846ms 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 = ?;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Nov 25 17 6 35s846ms 5s974ms [ User: postgres - Total duration: 35s846ms - Times executed: 6 ]
[ Application: [unknown] - Total duration: 35s846ms - Times executed: 6 ]
-
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: 2025-11-25 17:10:09 Duration: 6s704ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown] Bind query: yes
-
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: 2025-11-25 17:00:09 Duration: 6s364ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown] Bind query: yes
-
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: 2025-11-25 17:30:09 Duration: 6s105ms Database: acaweb_fx User: postgres Remote: 192.168.1.90 Application: [unknown] Bind query: yes
6 718ms 10s818ms 3s435ms 477 27m18s with rar_max as ( select resultuid from relevance_fibonacci_results order by resultuid desc limit ? ), fr as ( select a.*, rr.age, rr.relevant from fibonacci_results a left outer join relevance_fibonacci_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) end ), all_results as ( select fr.resultuid as resultuid, fr.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, fr.pattern as pattern_name, fr.timed as timed, fr.patternendtime as identified, dtt.timezone as timezone, fr.patternlengthbars as length, g.basegroupname, newlevels.filtered, case when fr.age is not null then fr.age when fr.resultuid <= rm.resultuid then ? else ? end as age, case when fr.relevant is not null then fr.relevant when fr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from fr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = fr.symbolid inner join symbols s on fr.symbolid = s.symbolid and s.nonliquid = ? inner join symbolgroup sg on fr.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 downloadersymbolsettings dss on fr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left join lateral calc_fib_signal_filter (fr.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 fr.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (fr.simulation = ? or fr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or fr.pattern in (...)) and (? = ? or fr.patternlengthbars <= ?) and (? = ? or (? = ? and fr.timed > cast(? as timestamp)) or (? = ? and fr.timed < cast(? as timestamp))) ), 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;Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Nov 25 17 477 27m18s 3s435ms [ User: postgres - Total duration: 27m18s - Times executed: 477 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 25m39s - Times executed: 465 ]
[ Application: [unknown] - Total duration: 1m39s - Times executed: 12 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_fibonacci_results ORDER BY resultuid DESC LIMIT 1 ), fr AS ( SELECT a.*, rr.age, rr.relevant from fibonacci_results a LEFT OUTER JOIN relevance_fibonacci_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) END ), all_results AS ( SELECT fr.resultuid AS resultuid, fr.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, fr.pattern AS pattern_name, fr.timed AS timed, fr.patternendtime AS identified, dtt.timezone AS timezone, fr.patternlengthbars AS length, g.basegroupname, newLevels.filtered, CASE WHEN fr.age IS NOT NULL THEN fr.age WHEN fr.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN fr.relevant IS NOT NULL THEN fr.relevant WHEN fr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM fr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = fr.symbolid INNER JOIN symbols s ON fr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN symbolgroup sg on fr.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 downloadersymbolsettings dss ON fr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT JOIN LATERAL calc_fib_signal_filter (fr.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 = 'OUTBOUND' WHERE fr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (fr.simulation = 0 OR fr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR fr.pattern in ('')) AND ('700' = 0 OR fr.patternlengthbars <= '700') AND ('0' = 0 OR ('0' = 1 AND fr.timed > cast('1970-01-01' as timestamp)) OR ('0' = 2 AND fr.timed < cast('1970-01-01' as timestamp))) ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:03:09 Duration: 10s818ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_fibonacci_results ORDER BY resultuid DESC LIMIT 1 ), fr AS ( SELECT a.*, rr.age, rr.relevant from fibonacci_results a LEFT OUTER JOIN relevance_fibonacci_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) END ), all_results AS ( SELECT fr.resultuid AS resultuid, fr.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, fr.pattern AS pattern_name, fr.timed AS timed, fr.patternendtime AS identified, dtt.timezone AS timezone, fr.patternlengthbars AS length, g.basegroupname, newLevels.filtered, CASE WHEN fr.age IS NOT NULL THEN fr.age WHEN fr.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN fr.relevant IS NOT NULL THEN fr.relevant WHEN fr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM fr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = fr.symbolid INNER JOIN symbols s ON fr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN symbolgroup sg on fr.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 downloadersymbolsettings dss ON fr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT JOIN LATERAL calc_fib_signal_filter (fr.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 = 'OUTBOUND' WHERE fr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (fr.simulation = 0 OR fr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR fr.pattern in ('')) AND ('700' = 0 OR fr.patternlengthbars <= '700') AND ('0' = 0 OR ('0' = 1 AND fr.timed > cast('1970-01-01' as timestamp)) OR ('0' = 2 AND fr.timed < cast('1970-01-01' as timestamp))) ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:42:46 Duration: 10s706ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_fibonacci_results ORDER BY resultuid DESC LIMIT 1 ), fr AS ( SELECT a.*, rr.age, rr.relevant from fibonacci_results a LEFT OUTER JOIN relevance_fibonacci_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = 't' THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) END ), all_results AS ( SELECT fr.resultuid AS resultuid, fr.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, fr.pattern AS pattern_name, fr.timed AS timed, fr.patternendtime AS identified, dtt.timezone AS timezone, fr.patternlengthbars AS length, g.basegroupname, newLevels.filtered, CASE WHEN fr.age IS NOT NULL THEN fr.age WHEN fr.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN fr.relevant IS NOT NULL THEN fr.relevant WHEN fr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM fr INNER JOIN brokersymbollist bsl ON bsl.brokerid = '689' AND bsl.symbolid = fr.symbolid INNER JOIN symbols s ON fr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN symbolgroup sg on fr.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 downloadersymbolsettings dss ON fr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT JOIN LATERAL calc_fib_signal_filter (fr.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 = 'OUTBOUND' WHERE fr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (fr.simulation = 0 OR fr.simulation IS NULL) AND ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('0' = 0 OR fr.pattern in ('')) AND ('400' = 0 OR fr.patternlengthbars <= '400') AND ('0' = 0 OR ('0' = 1 AND fr.timed > cast('1970-01-01' as timestamp)) OR ('0' = 2 AND fr.timed < cast('1970-01-01' as timestamp))) ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:10:59 Duration: 10s698ms Database: acaweb_fx User: postgres Remote: 182.165.1.42 Application: [unknown] Bind query: yes
7 2s291ms 4s419ms 3s223ms 16 51s575ms 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;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Nov 25 17 16 51s575ms 3s223ms [ User: postgres - Total duration: 51s575ms - Times executed: 16 ]
[ Application: psql - Total duration: 51s575ms - Times executed: 16 ]
-
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: 2025-11-25 17:01:19 Duration: 4s419ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:11:19 Duration: 4s226ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:56:17 Duration: 4s12ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
8 1s60ms 3s201ms 1s866ms 6 11s200ms refresh materialized view concurrently latest_t15_candle_view;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Nov 25 17 6 11s200ms 1s866ms [ User: postgres - Total duration: 11s200ms - Times executed: 6 ]
[ Application: [unknown] - Total duration: 11s200ms - Times executed: 6 ]
-
refresh materialized view concurrently latest_t15_candle_view;
Date: 2025-11-25 17:01:20 Duration: 3s201ms Database: acaweb_fx User: postgres Remote: 192.168.4.98 Application: [unknown]
-
refresh materialized view concurrently latest_t15_candle_view;
Date: 2025-11-25 17:31:18 Duration: 2s23ms Database: acaweb_fx User: postgres Remote: 192.168.4.98 Application: [unknown]
-
refresh materialized view concurrently latest_t15_candle_view;
Date: 2025-11-25 17:16:18 Duration: 1s977ms Database: acaweb_fx User: postgres Remote: 192.168.4.98 Application: [unknown]
9 902ms 2s980ms 1s687ms 16 27s4ms 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;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Nov 25 17 16 27s4ms 1s687ms [ User: postgres - Total duration: 27s4ms - Times executed: 16 ]
[ Application: psql - Total duration: 27s4ms - Times executed: 16 ]
-
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: 2025-11-25 17:18:15 Duration: 2s980ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:11:14 Duration: 2s813ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
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: 2025-11-25 17:01:14 Duration: 2s416ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
10 1s146ms 1s946ms 1s214ms 16 19s430ms with sym_info as ( select s.symbol as og_symbol, s.symbolid, coalesce(bim.code, s.symbol) as symbol, s.timegranularity, s.exchange, s.longname as symbolname, g.basegroupname, bg.brokerid, dft.absolutetimezoneoffset from symbols s inner join symbolgroup sg on sg.symbolid = s.symbolid inner join brokergroups bg on bg.groupid = sg.groupid inner join groups g on g.groupid = bg.groupid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dft on dft.classname = dss.classname and dft.dayofweek = ? left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bg.brokerid and bim.type = ? where bg.brokerid = ? and basegroupname = ? and g.designation = ? and s.nonliquid = ? ), signals as ( select * from ( select cp.og_symbol, cp.resultuid as cpresultuid, kl.resultuid as klresultuid, cp.symbolid as cpsymbolid, kl.symbolid as klsymbolid, cp.symbol, cp.timegranularity as cpt, kl.timegranularity as klt, cp.direction, cp.patternname as cppatternname, kl.patternname as klpatternname, case when cp.timegranularity < kl.timegranularity then cp.timegranularity else kl.timegranularity end as mint, case when cp.timegranularity < kl.timegranularity then cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / cp.timegranularity) as numeric) else cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / kl.timegranularity) as numeric) end as qtycandlesapart, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.openprice else cp.openprice end as openprice, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.predictiontimefrom else cp.predictiontimefrom end as predictiontimefrom, case when kl.patternclassid = ? and cp.direction > ? and cp.predictionpricefrom < kl.predictionpricefrom then cp.predictionpricefrom when kl.patternclassid = ? and cp.direction > ? and cp.predictionpricefrom > kl.predictionpricefrom then kl.predictionpricefrom when kl.patternclassid = ? and cp.direction < ? and cp.predictionpriceto < kl.predictionpriceto then kl.predictionpriceto when kl.patternclassid = ? and cp.direction < ? and cp.predictionpriceto > kl.predictionpriceto then cp.predictionpriceto when kl.patternclassid = ? and cp.direction > ? and cp.predictionpricefrom < kl.patternprice then cp.predictionpricefrom when kl.patternclassid = ? and cp.direction > ? and cp.predictionpricefrom > kl.patternprice then kl.patternprice when kl.patternclassid = ? and cp.direction < ? and cp.predictionpriceto < kl.patternprice then kl.patternprice when kl.patternclassid = ? and cp.direction < ? and cp.predictionpriceto > kl.patternprice then cp.predictionpriceto end as forecastprice, case when cp.gmttimefound < kl.gmttimefound then kl.gmttimefound else cp.gmttimefound end as gmttimefound, cp.patternendtime as cppet, kl.patternendtime as klpet, case when cp.patternendtime < kl.patternendtime then kl.patternendtime else cp.patternendtime end as max_patternendtime, cp.absolutetimezoneoffset from ( select si.og_symbol, si.symbolid, si.symbol, si.timegranularity, a.resultuid, direction, (patternendtime + si.timegranularity * interval ?) as predictiontimefrom, predictionpricefrom, a.pattern as patternname, predictionpriceto, a.latestbaratbreakoutprice as openprice, gmttimefound, si.brokerid, a.patternendtime, si.absolutetimezoneoffset from sym_info si inner join autochartist_results a on si.symbolid = a.symbolid where breakout >= ? and patternquality >= ?.? and patternendtime >= current_timestamp - interval ? and patternlengthbars < ?) as cp join ( select patternclassid, patternprice, si.symbolid, si.symbol, si.timegranularity, h.resultuid, direction, (cast(atbaridentified as timestamp) + si.timegranularity * interval ?) as predictiontimefrom, predictionpricefrom, case when direction > ? then ? else ? end as patternname, predictionpriceto, atpriceidentified as openprice, gmttimefound, h.patternendtime from sym_info si inner join keylevels_results h on si.symbolid = h.symbolid where patternclassid in (...) and patternendtime >= current_timestamp - interval ? and patternlengthbars < ?) as kl on cp.symbol = kl.symbol and cp.direction = kl.direction) as _tmp inner join currencypips pips on _tmp.og_symbol = pips.symbol where abs(forecastprice - openprice) / pip >= ? and _tmp.qtycandlesapart <= ? and ((cpresultuid > ( select coalesce(max(cpresultuid), ?) from correlating_signals acs where acs.basegroupname = ? and acs.brokerid = ?)) or (klresultuid > ( select coalesce(max(klresultuid), ?) from correlating_signals acs where acs.basegroupname = ? and acs.brokerid = ?))) -- maximum per day and ( select count(distinct cs.cpresultuid) -- count for today from correlating_signals cs where cs.brokerid = ? and cs.basegroupname = ? and date_trunc(?, cs.gmttimefound) = date_trunc(?, now()) and sent is true and filtered is false ) <= ( select case when coalesce(daily_max, ?) < ? then ? else coalesce(daily_max,?) end from corr_sigs_config_v where broker_id = ? limit ? ) and extract(epoch from age(current_timestamp at time zone ?, max_patternendtime - absolutetimezoneoffset * interval ?))/? < mint*? ), maxstats as ( select max(statsid) as maxid , st.brokerid, st.groupingname, st.groupingtype from stats st inner join sym_info si on st.brokerid = si.brokerid and case when st.groupingtype = ? then st.groupingname ilike si.exchange else st.groupingname ilike si.basegroupname end group by st.groupingname, st.brokerid, st.groupingtype ) select *, round(cast((cp_correct + kl_correct) / (cp_total + kl_total) * ? as numeric), ?) as percent, round(cast((kl_correct) / (kl_total) * ? as numeric), ?) as klpercent, round(cast((cp_correct ) / (cp_total ) * ? as numeric), ?) as cppercent from ( select sig.cpresultuid, sig.klresultuid, sig.cpsymbolid, si.symbol, sig.cpt, sig.klt, sig.direction, sig.cppatternname, sig.klpatternname, round(cast(sig.openprice as numeric), ?) as openprice, round(cast(sig.forecastprice as numeric), ?) as forecastprice, cast(round(cast(abs(sig.forecastprice - sig.openprice)/pip as numeric), ?)as int) as forecastpips, sig.predictiontimefrom, sig.gmttimefound, si.brokerid, ms.groupingname, si.basegroupname , si.symbolname, cast(cp_sym.correct + cp_patt.correct + cp_interval.correct + cp_hod.correct as float) as cp_correct, cast(cp_hod.total + cp_sym.total + cp_patt.total + cp_interval.total as float) as cp_total, cast(kl_sym.correct + kl_interval.correct + kl_hod.correct as float) as kl_correct, cast(kl_hod.total + kl_sym.total + kl_interval.total as float) as kl_total from signals sig inner join sym_info si on sig.cpsymbolid = si.symbolid inner join maxstats ms on case when ms.groupingtype = ? then ms.groupingname ilike si.exchange else ms.groupingname ilike si.basegroupname end -- cp stats inner join stats_summary cp_hod on cp_hod.statsid = ms.maxid and cp_hod.category = ? and date_part(?, sig.cppet) = cast(cp_hod.name as int) inner join stats_summary cp_interval on cp_interval.statsid = ms.maxid and cp_interval.category = ? and sig.cpt = cast(cp_interval.name as int) inner join stats_summary cp_patt on cp_patt.statsid = ms.maxid and cp_patt.category = ? and cp_patt.name ilike sig.cppatternname inner join stats_summary cp_sym on cp_sym.statsid = ms.maxid and cp_sym.category = ? and cp_sym.name ilike si.symbol -- kl stats inner join stats_hrs_summary kl_hod on kl_hod.statsid = ms.maxid and kl_hod.category = ? and date_part(?, sig.klpet) = cast(kl_hod.name as int) inner join stats_hrs_summary kl_interval on kl_interval.statsid = ms.maxid and kl_interval.category = ? and sig.klt = cast(kl_interval.name as int) inner join stats_hrs_summary kl_sym on kl_sym.statsid = ms.maxid and kl_sym.category = ? and kl_sym.name ilike si.symbol ) as tmp order by tmp.gmttimefound desc;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Nov 25 17 16 19s430ms 1s214ms [ User: postgres - Total duration: 19s430ms - Times executed: 16 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 19s430ms - Times executed: 16 ]
-
with sym_info as ( select s.symbol as og_symbol, s.symbolid, coalesce(bim.code, s.symbol) as symbol, s.timegranularity, s.exchange, s.longname as symbolname, g.basegroupname, bg.brokerid, dft.absolutetimezoneoffset from symbols s inner join symbolgroup sg on sg.symbolid = s.symbolid inner join brokergroups bg on bg.groupid = sg.groupid inner join groups g on g.groupid = bg.groupid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dft on dft.classname = dss.classname and dft.dayofweek = 3 LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bg.brokerid AND bim.TYPE = 'OUTBOUND' where bg.brokerid = '692' and basegroupname = 'Forex' and g.designation = '(All Intraday)' and s.nonliquid = 0 ), signals as ( select * from ( select cp.og_symbol, cp.resultuid as cpresultuid, kl.resultuid as klresultuid, cp.symbolid as cpsymbolid, kl.symbolid as klsymbolid, cp.symbol, cp.timegranularity as cpt, kl.timegranularity as klt, cp.direction, cp.patternname as cppatternname, kl.patternname as klpatternname, case when cp.timegranularity < kl.timegranularity then cp.timegranularity else kl.timegranularity end as mint, case when cp.timegranularity < kl.timegranularity then cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / cp.timegranularity) as numeric) else cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / kl.timegranularity) as numeric) end as qtycandlesapart, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.openprice else cp.openprice end as openprice, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.predictiontimefrom else cp.predictiontimefrom end as predictiontimefrom, case when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom < kl.predictionpricefrom then cp.predictionpricefrom when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom > kl.predictionpricefrom then kl.predictionpricefrom when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto < kl.predictionpriceto then kl.predictionpriceto when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto > kl.predictionpriceto then cp.predictionpriceto when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom < kl.patternprice then cp.predictionpricefrom when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom > kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto < kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto > kl.patternprice then cp.predictionpriceto end as forecastprice, case when cp.gmttimefound < kl.gmttimefound then kl.gmttimefound else cp.gmttimefound end as gmttimefound, cp.patternendtime as cppet, kl.patternendtime as klpet, case when cp.patternendtime < kl.patternendtime then kl.patternendtime else cp.patternendtime end as max_patternendtime, cp.absolutetimezoneoffset from ( select si.og_symbol, si.symbolid, si.symbol, si.timegranularity, a.resultuid, direction, (patternendtime + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, a.pattern as patternname, predictionpriceto, a.latestbaratbreakoutprice as openprice, gmttimefound, si.brokerid, a.patternendtime, si.absolutetimezoneoffset from sym_info si inner join autochartist_results a on si.symbolid = a.symbolid where breakout >= 0 and patternquality >= 0.3 and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as cp join ( select patternclassid, patternprice, si.symbolid, si.symbol, si.timegranularity, h.resultuid, direction, (cast(atbaridentified as timestamp) + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, case when direction > 0 then 'Resistance' else 'Support' end as patternname, predictionpriceto, atpriceidentified as openprice, gmttimefound, h.patternendtime from sym_info si inner join keylevels_results h on si.symbolid = h.symbolid where patternclassid in (1, 2) and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as kl on cp.symbol = kl.symbol and cp.direction = kl.direction) as _tmp inner join currencypips pips on _tmp.og_symbol = pips.symbol where abs(forecastprice - openprice) / pip >= 20 and _tmp.qtycandlesapart <= 5 and ((cpresultuid > ( SELECT COALESCE(MAX(cpresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '692')) OR (klresultuid > ( SELECT COALESCE(MAX(klresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '692'))) -- maximum per day and ( select count(distinct cs.cpresultuid) -- count for today from correlating_signals cs where cs.brokerid = '692' and cs.basegroupname = 'Forex' and date_trunc('day', cs.gmttimefound) = date_trunc('day', now()) and sent is true and filtered is false) <= ( select case when coalesce(daily_max, 5) < 1 then 1000 else coalesce(daily_max, 5) end from corr_sigs_config_v where broker_id = '692' limit 1) and extract(epoch from age(current_timestamp at TIME ZONE 'utc', max_patternendtime - absolutetimezoneoffset * INTERVAL '1 hour')) / 60 < mint * 3 ), maxstats as ( select MAX(statsid) as maxid, st.brokerid, st.groupingname, st.groupingtype from stats st inner join sym_info si on st.brokerid = si.brokerid and case when st.groupingtype = 'exchange' then st.groupingname ilike si.exchange else st.groupingname ilike si.basegroupname end group by st.groupingname, st.brokerid, st.groupingtype ) select *, round(cast((cp_correct + kl_correct) / (cp_total + kl_total) * 100 as numeric), 2) as percent, round(cast((kl_correct) / (kl_total) * 100 as numeric), 2) as klPercent, round(cast((cp_correct) / (cp_total) * 100 as numeric), 2) as cpPercent from ( select sig.cpresultuid, sig.klresultuid, sig.cpsymbolid, si.symbol, sig.cpt, sig.klt, sig.direction, sig.cppatternname, sig.klpatternname, round(cast(sig.openprice as numeric), 5) as openprice, round(cast(sig.forecastprice as numeric), 5) as forecastprice, CAST(round(cast(abs(sig.forecastprice - sig.openprice) / pip as numeric), 0) as int) as forecastpips, sig.predictiontimefrom, sig.gmttimefound, si.brokerid, ms.groupingname, si.basegroupname, si.symbolname, cast(cp_sym.correct + cp_patt.correct + cp_interval.correct + cp_hod.correct as float) as cp_correct, cast(cp_hod.total + cp_sym.total + cp_patt.total + cp_interval.total as float) as cp_total, cast(kl_sym.correct + kl_interval.correct + kl_hod.correct as float) as kl_correct, cast(kl_hod.total + kl_sym.total + kl_interval.total as float) as kl_total from signals sig inner join sym_info si on sig.cpsymbolid = si.symbolid inner join maxstats ms on case when ms.groupingtype = 'exchange' then ms.groupingname ilike si.exchange else ms.groupingname ilike si.basegroupname end -- cp stats inner join stats_summary cp_hod on cp_hod.statsid = ms.maxid and cp_hod.category = 'hourofday' and date_part('hour', sig.cppet) = cast(cp_hod.name as int) inner join stats_summary cp_interval on cp_interval.statsid = ms.maxid and cp_interval.category = 'interval' and sig.cpt = cast(cp_interval.name as int) inner join stats_summary cp_patt on cp_patt.statsid = ms.maxid and cp_patt.category = 'pattern' and cp_patt.name ilike sig.cppatternname inner join stats_summary cp_sym on cp_sym.statsid = ms.maxid and cp_sym.category = 'symbol' and cp_sym.name ilike si.symbol -- kl stats inner join stats_hrs_summary kl_hod on kl_hod.statsid = ms.maxid and kl_hod.category = 'hourofday' and date_part('hour', sig.klpet) = cast(kl_hod.name as int) inner join stats_hrs_summary kl_interval on kl_interval.statsid = ms.maxid and kl_interval.category = 'interval' and sig.klt = cast(kl_interval.name as int) inner join stats_hrs_summary kl_sym on kl_sym.statsid = ms.maxid and kl_sym.category = 'symbol' and kl_sym.name ilike si.symbol) AS tmp order by tmp.gmttimefound desc;
Date: 2025-11-25 17:51:54 Duration: 1s946ms Database: acaweb_fx User: postgres Remote: 192.168.4.238 Application: PostgreSQL JDBC Driver Bind query: yes
-
with sym_info as ( select s.symbol as og_symbol, s.symbolid, coalesce(bim.code, s.symbol) as symbol, s.timegranularity, s.exchange, s.longname as symbolname, g.basegroupname, bg.brokerid, dft.absolutetimezoneoffset from symbols s inner join symbolgroup sg on sg.symbolid = s.symbolid inner join brokergroups bg on bg.groupid = sg.groupid inner join groups g on g.groupid = bg.groupid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dft on dft.classname = dss.classname and dft.dayofweek = 3 LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bg.brokerid AND bim.TYPE = 'OUTBOUND' where bg.brokerid = '620' and basegroupname = 'Forex' and g.designation = '(All Intraday)' and s.nonliquid = 0 ), signals as ( select * from ( select cp.og_symbol, cp.resultuid as cpresultuid, kl.resultuid as klresultuid, cp.symbolid as cpsymbolid, kl.symbolid as klsymbolid, cp.symbol, cp.timegranularity as cpt, kl.timegranularity as klt, cp.direction, cp.patternname as cppatternname, kl.patternname as klpatternname, case when cp.timegranularity < kl.timegranularity then cp.timegranularity else kl.timegranularity end as mint, case when cp.timegranularity < kl.timegranularity then cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / cp.timegranularity) as numeric) else cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / kl.timegranularity) as numeric) end as qtycandlesapart, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.openprice else cp.openprice end as openprice, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.predictiontimefrom else cp.predictiontimefrom end as predictiontimefrom, case when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom < kl.predictionpricefrom then cp.predictionpricefrom when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom > kl.predictionpricefrom then kl.predictionpricefrom when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto < kl.predictionpriceto then kl.predictionpriceto when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto > kl.predictionpriceto then cp.predictionpriceto when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom < kl.patternprice then cp.predictionpricefrom when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom > kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto < kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto > kl.patternprice then cp.predictionpriceto end as forecastprice, case when cp.gmttimefound < kl.gmttimefound then kl.gmttimefound else cp.gmttimefound end as gmttimefound, cp.patternendtime as cppet, kl.patternendtime as klpet, case when cp.patternendtime < kl.patternendtime then kl.patternendtime else cp.patternendtime end as max_patternendtime, cp.absolutetimezoneoffset from ( select si.og_symbol, si.symbolid, si.symbol, si.timegranularity, a.resultuid, direction, (patternendtime + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, a.pattern as patternname, predictionpriceto, a.latestbaratbreakoutprice as openprice, gmttimefound, si.brokerid, a.patternendtime, si.absolutetimezoneoffset from sym_info si inner join autochartist_results a on si.symbolid = a.symbolid where breakout >= 0 and patternquality >= 0.3 and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as cp join ( select patternclassid, patternprice, si.symbolid, si.symbol, si.timegranularity, h.resultuid, direction, (cast(atbaridentified as timestamp) + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, case when direction > 0 then 'Resistance' else 'Support' end as patternname, predictionpriceto, atpriceidentified as openprice, gmttimefound, h.patternendtime from sym_info si inner join keylevels_results h on si.symbolid = h.symbolid where patternclassid in (1, 2) and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as kl on cp.symbol = kl.symbol and cp.direction = kl.direction) as _tmp inner join currencypips pips on _tmp.og_symbol = pips.symbol where abs(forecastprice - openprice) / pip >= 20 and _tmp.qtycandlesapart <= 5 and ((cpresultuid > ( SELECT COALESCE(MAX(cpresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '620')) OR (klresultuid > ( SELECT COALESCE(MAX(klresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '620'))) -- maximum per day and ( select count(distinct cs.cpresultuid) -- count for today from correlating_signals cs where cs.brokerid = '620' and cs.basegroupname = 'Forex' and date_trunc('day', cs.gmttimefound) = date_trunc('day', now()) and sent is true and filtered is false) <= ( select case when coalesce(daily_max, 5) < 1 then 1000 else coalesce(daily_max, 5) end from corr_sigs_config_v where broker_id = '620' limit 1) and extract(epoch from age(current_timestamp at TIME ZONE 'utc', max_patternendtime - absolutetimezoneoffset * INTERVAL '1 hour')) / 60 < mint * 3 ), maxstats as ( select MAX(statsid) as maxid, st.brokerid, st.groupingname, st.groupingtype from stats st inner join sym_info si on st.brokerid = si.brokerid and case when st.groupingtype = 'exchange' then st.groupingname ilike si.exchange else st.groupingname ilike si.basegroupname end group by st.groupingname, st.brokerid, st.groupingtype ) select *, round(cast((cp_correct + kl_correct) / (cp_total + kl_total) * 100 as numeric), 2) as percent, round(cast((kl_correct) / (kl_total) * 100 as numeric), 2) as klPercent, round(cast((cp_correct) / (cp_total) * 100 as numeric), 2) as cpPercent from ( select sig.cpresultuid, sig.klresultuid, sig.cpsymbolid, si.symbol, sig.cpt, sig.klt, sig.direction, sig.cppatternname, sig.klpatternname, round(cast(sig.openprice as numeric), 5) as openprice, round(cast(sig.forecastprice as numeric), 5) as forecastprice, CAST(round(cast(abs(sig.forecastprice - sig.openprice) / pip as numeric), 0) as int) as forecastpips, sig.predictiontimefrom, sig.gmttimefound, si.brokerid, ms.groupingname, si.basegroupname, si.symbolname, cast(cp_sym.correct + cp_patt.correct + cp_interval.correct + cp_hod.correct as float) as cp_correct, cast(cp_hod.total + cp_sym.total + cp_patt.total + cp_interval.total as float) as cp_total, cast(kl_sym.correct + kl_interval.correct + kl_hod.correct as float) as kl_correct, cast(kl_hod.total + kl_sym.total + kl_interval.total as float) as kl_total from signals sig inner join sym_info si on sig.cpsymbolid = si.symbolid inner join maxstats ms on case when ms.groupingtype = 'exchange' then ms.groupingname ilike si.exchange else ms.groupingname ilike si.basegroupname end -- cp stats inner join stats_summary cp_hod on cp_hod.statsid = ms.maxid and cp_hod.category = 'hourofday' and date_part('hour', sig.cppet) = cast(cp_hod.name as int) inner join stats_summary cp_interval on cp_interval.statsid = ms.maxid and cp_interval.category = 'interval' and sig.cpt = cast(cp_interval.name as int) inner join stats_summary cp_patt on cp_patt.statsid = ms.maxid and cp_patt.category = 'pattern' and cp_patt.name ilike sig.cppatternname inner join stats_summary cp_sym on cp_sym.statsid = ms.maxid and cp_sym.category = 'symbol' and cp_sym.name ilike si.symbol -- kl stats inner join stats_hrs_summary kl_hod on kl_hod.statsid = ms.maxid and kl_hod.category = 'hourofday' and date_part('hour', sig.klpet) = cast(kl_hod.name as int) inner join stats_hrs_summary kl_interval on kl_interval.statsid = ms.maxid and kl_interval.category = 'interval' and sig.klt = cast(kl_interval.name as int) inner join stats_hrs_summary kl_sym on kl_sym.statsid = ms.maxid and kl_sym.category = 'symbol' and kl_sym.name ilike si.symbol) AS tmp order by tmp.gmttimefound desc;
Date: 2025-11-25 17:06:44 Duration: 1s236ms Database: acaweb_fx User: postgres Remote: 192.168.4.238 Application: PostgreSQL JDBC Driver Bind query: yes
-
with sym_info as ( select s.symbol as og_symbol, s.symbolid, coalesce(bim.code, s.symbol) as symbol, s.timegranularity, s.exchange, s.longname as symbolname, g.basegroupname, bg.brokerid, dft.absolutetimezoneoffset from symbols s inner join symbolgroup sg on sg.symbolid = s.symbolid inner join brokergroups bg on bg.groupid = sg.groupid inner join groups g on g.groupid = bg.groupid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dft on dft.classname = dss.classname and dft.dayofweek = 3 LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bg.brokerid AND bim.TYPE = 'OUTBOUND' where bg.brokerid = '617' and basegroupname = 'Forex' and g.designation = '(All Intraday)' and s.nonliquid = 0 ), signals as ( select * from ( select cp.og_symbol, cp.resultuid as cpresultuid, kl.resultuid as klresultuid, cp.symbolid as cpsymbolid, kl.symbolid as klsymbolid, cp.symbol, cp.timegranularity as cpt, kl.timegranularity as klt, cp.direction, cp.patternname as cppatternname, kl.patternname as klpatternname, case when cp.timegranularity < kl.timegranularity then cp.timegranularity else kl.timegranularity end as mint, case when cp.timegranularity < kl.timegranularity then cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / cp.timegranularity) as numeric) else cast(abs(extract(epoch from age(cp.predictiontimefrom, kl.predictiontimefrom)) / kl.timegranularity) as numeric) end as qtycandlesapart, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.openprice else cp.openprice end as openprice, case when cp.predictiontimefrom < kl.predictiontimefrom then kl.predictiontimefrom else cp.predictiontimefrom end as predictiontimefrom, case when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom < kl.predictionpricefrom then cp.predictionpricefrom when kl.patternclassid = 1 AND cp.direction > 0 and cp.predictionpricefrom > kl.predictionpricefrom then kl.predictionpricefrom when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto < kl.predictionpriceto then kl.predictionpriceto when kl.patternclassid = 1 AND cp.direction < 0 and cp.predictionpriceto > kl.predictionpriceto then cp.predictionpriceto when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom < kl.patternprice then cp.predictionpricefrom when kl.patternclassid = 2 AND cp.direction > 0 and cp.predictionpricefrom > kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto < kl.patternprice then kl.patternprice when kl.patternclassid = 2 AND cp.direction < 0 and cp.predictionpriceto > kl.patternprice then cp.predictionpriceto end as forecastprice, case when cp.gmttimefound < kl.gmttimefound then kl.gmttimefound else cp.gmttimefound end as gmttimefound, cp.patternendtime as cppet, kl.patternendtime as klpet, case when cp.patternendtime < kl.patternendtime then kl.patternendtime else cp.patternendtime end as max_patternendtime, cp.absolutetimezoneoffset from ( select si.og_symbol, si.symbolid, si.symbol, si.timegranularity, a.resultuid, direction, (patternendtime + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, a.pattern as patternname, predictionpriceto, a.latestbaratbreakoutprice as openprice, gmttimefound, si.brokerid, a.patternendtime, si.absolutetimezoneoffset from sym_info si inner join autochartist_results a on si.symbolid = a.symbolid where breakout >= 0 and patternquality >= 0.3 and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as cp join ( select patternclassid, patternprice, si.symbolid, si.symbol, si.timegranularity, h.resultuid, direction, (cast(atbaridentified as timestamp) + si.timegranularity * interval '1 minute') as predictiontimefrom, predictionpricefrom, case when direction > 0 then 'Resistance' else 'Support' end as patternname, predictionpriceto, atpriceidentified as openprice, gmttimefound, h.patternendtime from sym_info si inner join keylevels_results h on si.symbolid = h.symbolid where patternclassid in (1, 2) and patternendtime >= current_timestamp - interval '7 days' and patternlengthbars < 501) as kl on cp.symbol = kl.symbol and cp.direction = kl.direction) as _tmp inner join currencypips pips on _tmp.og_symbol = pips.symbol where abs(forecastprice - openprice) / pip >= 20 and _tmp.qtycandlesapart <= 5 and ((cpresultuid > ( SELECT COALESCE(MAX(cpresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '617')) OR (klresultuid > ( SELECT COALESCE(MAX(klresultuid), 0) FROM correlating_signals acs where acs.basegroupname = 'Forex' and acs.brokerid = '617'))) -- maximum per day and ( select count(distinct cs.cpresultuid) -- count for today from correlating_signals cs where cs.brokerid = '617' and cs.basegroupname = 'Forex' and date_trunc('day', cs.gmttimefound) = date_trunc('day', now()) and sent is true and filtered is false) <= ( select case when coalesce(daily_max, 5) < 1 then 1000 else coalesce(daily_max, 5) end from corr_sigs_config_v where broker_id = '617' limit 1) and extract(epoch from age(current_timestamp at TIME ZONE 'utc', max_patternendtime - absolutetimezoneoffset * INTERVAL '1 hour')) / 60 < mint * 3 ), maxstats as ( select MAX(statsid) as maxid, st.brokerid, st.groupingname, st.groupingtype from stats st inner join sym_info si on st.brokerid = si.brokerid and case when st.groupingtype = 'exchange' then st.groupingname ilike si.exchange else st.groupingname ilike si.basegroupname end group by st.groupingname, st.brokerid, st.groupingtype ) select *, round(cast((cp_correct + kl_correct) / (cp_total + kl_total) * 100 as numeric), 2) as percent, round(cast((kl_correct) / (kl_total) * 100 as numeric), 2) as klPercent, round(cast((cp_correct) / (cp_total) * 100 as numeric), 2) as cpPercent from ( select sig.cpresultuid, sig.klresultuid, sig.cpsymbolid, si.symbol, sig.cpt, sig.klt, sig.direction, sig.cppatternname, sig.klpatternname, round(cast(sig.openprice as numeric), 5) as openprice, round(cast(sig.forecastprice as numeric), 5) as forecastprice, CAST(round(cast(abs(sig.forecastprice - sig.openprice) / pip as numeric), 0) as int) as forecastpips, sig.predictiontimefrom, sig.gmttimefound, si.brokerid, ms.groupingname, si.basegroupname, si.symbolname, cast(cp_sym.correct + cp_patt.correct + cp_interval.correct + cp_hod.correct as float) as cp_correct, cast(cp_hod.total + cp_sym.total + cp_patt.total + cp_interval.total as float) as cp_total, cast(kl_sym.correct + kl_interval.correct + kl_hod.correct as float) as kl_correct, cast(kl_hod.total + kl_sym.total + kl_interval.total as float) as kl_total from signals sig inner join sym_info si on sig.cpsymbolid = si.symbolid inner join maxstats ms on case when ms.groupingtype = 'exchange' then ms.groupingname ilike si.exchange else ms.groupingname ilike si.basegroupname end -- cp stats inner join stats_summary cp_hod on cp_hod.statsid = ms.maxid and cp_hod.category = 'hourofday' and date_part('hour', sig.cppet) = cast(cp_hod.name as int) inner join stats_summary cp_interval on cp_interval.statsid = ms.maxid and cp_interval.category = 'interval' and sig.cpt = cast(cp_interval.name as int) inner join stats_summary cp_patt on cp_patt.statsid = ms.maxid and cp_patt.category = 'pattern' and cp_patt.name ilike sig.cppatternname inner join stats_summary cp_sym on cp_sym.statsid = ms.maxid and cp_sym.category = 'symbol' and cp_sym.name ilike si.symbol -- kl stats inner join stats_hrs_summary kl_hod on kl_hod.statsid = ms.maxid and kl_hod.category = 'hourofday' and date_part('hour', sig.klpet) = cast(kl_hod.name as int) inner join stats_hrs_summary kl_interval on kl_interval.statsid = ms.maxid and kl_interval.category = 'interval' and sig.klt = cast(kl_interval.name as int) inner join stats_hrs_summary kl_sym on kl_sym.statsid = ms.maxid and kl_sym.category = 'symbol' and kl_sym.name ilike si.symbol) AS tmp order by tmp.gmttimefound desc;
Date: 2025-11-25 17:06:47 Duration: 1s235ms Database: acaweb_fx User: postgres Remote: 192.168.4.238 Application: PostgreSQL JDBC Driver Bind query: yes
11 13ms 5s480ms 643ms 34 21s885ms select fixcandlegaps (?, false);Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Nov 25 17 34 21s885ms 643ms [ User: postgres - Total duration: 21s885ms - Times executed: 34 ]
[ Application: psql - Total duration: 21s885ms - Times executed: 34 ]
-
select fixcandlegaps ('ICMARKETS-AU-MT5', false);
Date: 2025-11-25 17:06:23 Duration: 5s480ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select fixcandlegaps ('ATFX', false);
Date: 2025-11-25 17:06:08 Duration: 3s642ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
-
select fixcandlegaps ('PEPPERSTONE', false);
Date: 2025-11-25 17:06:15 Duration: 2s390ms Database: acaweb_fx User: postgres Remote: [local] Application: psql
12 62ms 1s277ms 378ms 358 2m15s with rar_max as ( 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;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Nov 25 17 358 2m15s 378ms [ User: postgres - Total duration: 2m15s - Times executed: 358 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 2m3s - Times executed: 346 ]
[ Application: [unknown] - Total duration: 12s358ms - Times executed: 12 ]
-
WITH rar_max as ( 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 = '689' 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 ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('310' = 0 OR coalesce(bim.code, s.symbol) in ('#AAPL', '#ADS', '#AIG', '#ALV', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BAS', '#BAYN', '#BEI', '#BIDU', '#BMW', '#C', '#CAT', '#CBK', '#CL', '#CSCO', '#CVX', '#DAI', '#DB1', '#DBK', '#DIS', '#DPW', '#DTE', '#EBAY', '#EON', '#F', '#FB', '#FDX', '#FME', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#IFX', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LHA', '#LMT', '#MA', '#MCD', '#META', '#MMM', '#MSFT', '#MUV2', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#RWE', '#SAP', '#SIE', '#T', '#UBER', '#V', '#VOW', '#WB', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS200', 'BRENT', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CHI50', 'ESP35', 'ETHUSD', 'EU50', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'FRA40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'LTCUSD', 'NAS100', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'SPX500', 'UK100', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'WTI', 'XAGUSD', 'XAUUSD', '#ADS', '#ALV', '#BAS', '#BAYN', '#BEI', '#BMW', '#CBK', '#DAI', '#DB1', '#DBK', '#DPW', '#DTE', '#EON', '#FME', '#IFX', '#LHA', '#MUV2', '#RWE', '#SAP', '#SIE', '#VOW', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BTCUSD', 'ETHUSD', 'LTCUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURHUF', 'EURJPY', 'EURNZD', 'EURPLN', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'USDCNH', 'USDCZK', 'USDDKK', 'USDHKD', 'USDHUF', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDTRY', 'USDX', 'USDZAR', 'XAGUSD', 'XAUUSD', 'BRENT', 'WTI', 'AUS200', 'CHI50', 'ESP35', 'EU50', 'FRA40', 'GER30', 'HK50', 'HKCH50', 'IT40', 'JP225', 'NAS100', 'SPX500', 'UK100', 'US30', 'AUDUSD', 'EURUSD', 'GBPUSD', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDJPY', '#AAPL', '#AIG', '#AMZN', '#AXP', '#BA', '#BABA', '#BAC', '#BIDU', '#C', '#CAT', '#CL', '#CSCO', '#CVX', '#DIS', '#EBAY', '#F', '#FB', '#FDX', '#GE', '#GM', '#GOOG', '#GS', '#HPQ', '#IBM', '#INTC', '#JD', '#JNJ', '#JPM', '#KO', '#LMT', '#MA', '#MCD', '#MMM', '#MSFT', '#NFLX', '#NKE', '#NTES', '#ORCL', '#PFE', '#PG', '#QCOM', '#RACE', '#T', '#UBER', '#V', '#WB', '#XOM')) AND ('400' = 0 OR ccr.patternlengthbars <= '400') ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:56:17 Duration: 1s277ms Database: acaweb_fx User: postgres Remote: 182.165.1.42 Application: [unknown] Bind query: yes
-
WITH rar_max as ( 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 = '627' 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 ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('213' = 0 OR coalesce(bim.code, s.symbol) in ('#ADBE', '#ALVG', '#AMZN', '#APPL', '#BA', '#BABA', '#BAYGn', '#BMWG', '#BNPP', '#CAT', '#CBKG', '#DAIGn', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#META', '#MSFT', '#NFLX', '#TSLA', '#VOWG', '#WMT', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS_200', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CL_BRENT', 'DASHUSD', 'EOSUSD', 'ESP_35', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'EUR_50', 'FRA_40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'GBR_100', 'HKDJPY', 'HKG_50', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NAS100', 'NEOUSD', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'OMGUSD', 'SPX500', 'TRXUSD', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'USOIL', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XMRUSD', 'XPTUSD', 'XRPUSD', 'ZARJPY', 'ZECUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'HKDJPY', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'ZARJPY', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'DASHUSD', 'EOSUSD', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NEOUSD', 'OMGUSD', 'TRXUSD', 'XMRUSD', 'XRPUSD', 'ZECUSD', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XPTUSD', 'CL_BRENT', 'USOIL', '#ALVG', '#BAYGn', '#BMWG', '#BNPP', '#CBKG', '#DAIGn', '#VOWG', 'AUS_200', 'ESP_35', 'EUR_50', 'FRA_40', 'GBR_100', 'HKG_50', 'NAS100', 'SPX500', 'US30', '#ADBE', '#AMZN', '#APPL', '#BA', '#BABA', '#CAT', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#MSFT', '#NFLX', '#TSLA', '#WMT', '#XOM')) AND ('700' = 0 OR ccr.patternlengthbars <= '700') ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:05:46 Duration: 1s264ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( 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 = '627' 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 ('7' = 0 OR s.timegranularity in ('15', '30', '60', '120', '240', '480', '1440')) AND ('0' = 0 OR s.exchange in ('')) AND ('213' = 0 OR coalesce(bim.code, s.symbol) in ('#ADBE', '#ALVG', '#AMZN', '#APPL', '#BA', '#BABA', '#BAYGn', '#BMWG', '#BNPP', '#CAT', '#CBKG', '#DAIGn', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#META', '#MSFT', '#NFLX', '#TSLA', '#VOWG', '#WMT', '#XOM', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'AUS_200', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'CL_BRENT', 'DASHUSD', 'EOSUSD', 'ESP_35', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'EUR_50', 'FRA_40', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'GBR_100', 'HKDJPY', 'HKG_50', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NAS100', 'NEOUSD', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'OMGUSD', 'SPX500', 'TRXUSD', 'US30', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'USOIL', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XMRUSD', 'XPTUSD', 'XRPUSD', 'ZARJPY', 'ZECUSD', 'AUDCAD', 'AUDCHF', 'AUDJPY', 'AUDNZD', 'AUDUSD', 'CADCHF', 'CADJPY', 'CHFJPY', 'EURAUD', 'EURCAD', 'EURCHF', 'EURGBP', 'EURJPY', 'EURMXN', 'EURNOK', 'EURNZD', 'EURPLN', 'EURSEK', 'EURTRY', 'EURUSD', 'GBPAUD', 'GBPCAD', 'GBPCHF', 'GBPJPY', 'GBPNZD', 'GBPUSD', 'GBPZAR', 'HKDJPY', 'NOKJPY', 'NZDCAD', 'NZDCHF', 'NZDJPY', 'NZDUSD', 'USDCAD', 'USDCHF', 'USDCNH', 'USDDKK', 'USDJPY', 'USDMXN', 'USDNOK', 'USDPLN', 'USDSEK', 'USDSGD', 'USDZAR', 'ZARJPY', 'BTCEUR', 'BTCGBP', 'BTCUSD', 'DASHUSD', 'EOSUSD', 'ETHEUR', 'ETHGBP', 'ETHUSD', 'IOTAUSD', 'LTCEUR', 'LTCUSD', 'NEOUSD', 'OMGUSD', 'TRXUSD', 'XMRUSD', 'XRPUSD', 'ZECUSD', 'XAGUSD', 'XAUEUR', 'XAUUSD', 'XPTUSD', 'CL_BRENT', 'USOIL', '#ALVG', '#BAYGn', '#BMWG', '#BNPP', '#CBKG', '#DAIGn', '#VOWG', 'AUS_200', 'ESP_35', 'EUR_50', 'FRA_40', 'GBR_100', 'HKG_50', 'NAS100', 'SPX500', 'US30', '#ADBE', '#AMZN', '#APPL', '#BA', '#BABA', '#CAT', '#DIS', '#EA', '#FB', '#FDX', '#GE', '#GM', '#GOOGL', '#GS', '#INTC', '#JPM', '#KO', '#MSFT', '#NFLX', '#TSLA', '#WMT', '#XOM')) AND ('700' = 0 OR ccr.patternlengthbars <= '700') ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = 't' OR relevant = 1) AND ('10' = 0 OR age <= '10') ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-11-25 17:05:41 Duration: 1s253ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
13 98ms 895ms 376ms 105 39s510ms with last_candle as ( select acs.symbolid as symbolid, acs.latestpricedatetime as latest_candle_time, bsl.brokerid as broker_id, coalesce(bim.code, s.symbol) as symbol, bim.code as symbol_mapping, s.exchange as exchange, s.timegranularity as timegranularity from autochartist_symbolupdates acs inner join brokersymbollist bsl on acs.symbolid = bsl.symbolid inner join symbols s on acs.symbolid = s.symbolid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where bsl.brokerid = ? and s.deleted = ? and s.nonliquid = ? and acs.latestpricedatetime is not null ) select * from ( select lc.broker_id as brokerid, prf.groupid, psp.symbolid, prf.longname, psd.hourlysymbolid, lc.symbol, lc.exchange, psp.enddate, psp.dayofweek, psp.fromtime, floor(psp.fromtime / ?) + ? as sast_hh, mod(cast(psp.fromtime as int), ?) as sast_mm, current_timestamp as datetime, (powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice as closingprice, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_15 + psp.stddev_15) / ?.?) as low_15, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_15 + psp.stddev_15) / ?.?) as high_15, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_30 + psp.stddev_30) / ?.?) as low_30, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_30 + psp.stddev_30) / ?.?) as high_30, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_60 + psp.stddev_60) / ?.?) as low_60, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_60 + psp.stddev_60) / ?.?) as high_60, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_240 + psp.stddev_240) / ?.?) as low_240, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_240 + psp.stddev_240) / ?.?) as high_240, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_1440 + psp.stddev_1440) / ?.?) as low_1440, ((powerstatslatestprfprice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_1440 + psp.stddev_1440) / ?.?) as high_1440, dtt.absolutetimezoneoffset as datafeedtimezoneoffset, dtt.timezone as datafeedtimezonename, (round((cast(? as float) - rank) / ? * ?)) as rank_rounded, ((cast(? as float) - rank) / ? * ?) as rank from last_candle lc inner join downloadersymbolsettings dss on lc.symbolid = dss.symbolid inner join datafeedstimetable dtt on trim(dss.classname) = trim(dtt.classname) and dtt.dayofweek = ? -- assuming timezone is same for whole week. inner join powerstats_symboldata psd on psd.symbolid = lc.symbolid left outer join powerstats_trumpet psp on psd.trumpetsymbolid = psp.symbolid and psp.dayofweek = extract(dow from lc.latest_candle_time) and psp.fromtime = cast(extract(? from lc.latest_candle_time) as integer) * ? + extract(? from (cast(extract(? from lc.latest_candle_time) as integer) / ?) * ? * interval ?) inner join prfsymboltree prf on psd.symbolid = prf.symbolid and date_trunc(?, prf.enddate) = date_trunc(?, psp.enddate) left join lateral ( select ph.hour, (ave + stddev) as volatility, rank() over (order by (ave + stddev) desc) as rank from powerstats_hourly ph where ph.symbolid = psd.hourlysymbolid and date_trunc(?,ph.enddate) = date_trunc(?, prf.enddate) ) rank_query on true where prf.brokerid = ? and rank_query.hour = floor((psp.fromtime) / ?) and volatility > ? order by rank desc, rank_rounded desc, exchange, symbol, groupid) sub order by brokerid, groupid, symbolid;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Nov 25 17 105 39s510ms 376ms [ User: postgres - Total duration: 39s510ms - Times executed: 105 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 39s510ms - Times executed: 105 ]
-
WITH last_candle AS ( SELECT acs.symbolid AS symbolid, acs.latestpricedatetime AS latest_candle_time, bsl.brokerid AS broker_id, coalesce(bim.code, s.symbol) AS symbol, bim.code AS symbol_mapping, s.exchange AS exchange, s.timegranularity AS timegranularity FROM autochartist_symbolupdates acs INNER JOIN brokersymbollist bsl ON acs.symbolid = bsl.symbolid INNER JOIN symbols s ON acs.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss ON s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE bsl.brokerid = '667' AND s.deleted = 0 AND s.nonliquid = 0 AND acs.latestpricedatetime IS NOT NULL ) SELECT * FROM ( SELECT lc.broker_id AS brokerid, prf.groupid, psp.symbolid, prf.longname, psd.hourlysymbolid, lc.symbol, lc.exchange, psp.enddate, psp.dayofweek, psp.fromtime, floor(psp.fromtime / 60) + 6 as SAST_HH, mod(cast(psp.fromtime as int), 60) as SAST_MM, current_timestamp AS datetime, (PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice AS closingprice, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_15 + psp.stddev_15) / 2.0) AS low_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_15 + psp.stddev_15) / 2.0) AS high_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_30 + psp.stddev_30) / 2.0) AS low_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_30 + psp.stddev_30) / 2.0) AS high_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_60 + psp.stddev_60) / 2.0) AS low_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_60 + psp.stddev_60) / 2.0) AS high_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_240 + psp.stddev_240) / 2.0) AS low_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_240 + psp.stddev_240) / 2.0) AS high_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_1440 + psp.stddev_1440) / 2.0) AS low_1440, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_1440 + psp.stddev_1440) / 2.0) AS high_1440, dtt.absolutetimezoneoffset AS datafeedtimezoneoffset, dtt.timezone AS datafeedtimezonename, (round((cast(25 as float) - rank) / 24 * 10)) as rank_rounded, ((cast(25 as float) - rank) / 24 * 10) as rank FROM last_candle lc INNER JOIN downloadersymbolsettings dss ON lc.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON TRIM(dss.classname) = TRIM(dtt.classname) and dtt.dayofweek = 3 -- assuming timezone is same for whole week. INNER JOIN powerstats_symboldata psd ON psd.symbolid = lc.symbolid LEFT OUTER JOIN powerstats_trumpet psp ON psd.trumpetsymbolid = psp.symbolid AND psp.dayofweek = extract(dow from lc.latest_candle_time) AND psp.fromtime = cast(extract('hour' from lc.latest_candle_time) as integer) * 60 + extract('minute' from (cast(extract('minute' from lc.latest_candle_time) as integer) / 15) * 15 * interval '1 minutes') INNER JOIN prfsymboltree prf ON psd.symbolid = prf.symbolid and DATE_TRUNC('day', prf.enddate) = DATE_TRUNC('day', psp.enddate) LEFT JOIN LATERAL ( SELECT ph.hour, (ave + stddev) AS volatility, rank() over (ORDER BY (ave + stddev) DESC) AS rank FROM powerstats_hourly ph WHERE ph.symbolid = psd.hourlysymbolid AND DATE_TRUNC('day', ph.enddate) = DATE_TRUNC('day', prf.enddate)) rank_query ON true WHERE prf.brokerid = '667' AND rank_query.hour = floor((psp.fromtime) / 60) AND volatility > 0 ORDER BY rank DESC, rank_rounded DESC, exchange, symbol, groupid) sub order by brokerid, groupid, symbolid;
Date: 2025-11-25 17:52:05 Duration: 895ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH last_candle AS ( SELECT acs.symbolid AS symbolid, acs.latestpricedatetime AS latest_candle_time, bsl.brokerid AS broker_id, coalesce(bim.code, s.symbol) AS symbol, bim.code AS symbol_mapping, s.exchange AS exchange, s.timegranularity AS timegranularity FROM autochartist_symbolupdates acs INNER JOIN brokersymbollist bsl ON acs.symbolid = bsl.symbolid INNER JOIN symbols s ON acs.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss ON s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE bsl.brokerid = '538' AND s.deleted = 0 AND s.nonliquid = 0 AND acs.latestpricedatetime IS NOT NULL ) SELECT * FROM ( SELECT lc.broker_id AS brokerid, prf.groupid, psp.symbolid, prf.longname, psd.hourlysymbolid, lc.symbol, lc.exchange, psp.enddate, psp.dayofweek, psp.fromtime, floor(psp.fromtime / 60) + 6 as SAST_HH, mod(cast(psp.fromtime as int), 60) as SAST_MM, current_timestamp AS datetime, (PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice AS closingprice, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_15 + psp.stddev_15) / 2.0) AS low_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_15 + psp.stddev_15) / 2.0) AS high_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_30 + psp.stddev_30) / 2.0) AS low_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_30 + psp.stddev_30) / 2.0) AS high_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_60 + psp.stddev_60) / 2.0) AS low_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_60 + psp.stddev_60) / 2.0) AS high_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_240 + psp.stddev_240) / 2.0) AS low_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_240 + psp.stddev_240) / 2.0) AS high_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_1440 + psp.stddev_1440) / 2.0) AS low_1440, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_1440 + psp.stddev_1440) / 2.0) AS high_1440, dtt.absolutetimezoneoffset AS datafeedtimezoneoffset, dtt.timezone AS datafeedtimezonename, (round((cast(25 as float) - rank) / 24 * 10)) as rank_rounded, ((cast(25 as float) - rank) / 24 * 10) as rank FROM last_candle lc INNER JOIN downloadersymbolsettings dss ON lc.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON TRIM(dss.classname) = TRIM(dtt.classname) and dtt.dayofweek = 3 -- assuming timezone is same for whole week. INNER JOIN powerstats_symboldata psd ON psd.symbolid = lc.symbolid LEFT OUTER JOIN powerstats_trumpet psp ON psd.trumpetsymbolid = psp.symbolid AND psp.dayofweek = extract(dow from lc.latest_candle_time) AND psp.fromtime = cast(extract('hour' from lc.latest_candle_time) as integer) * 60 + extract('minute' from (cast(extract('minute' from lc.latest_candle_time) as integer) / 15) * 15 * interval '1 minutes') INNER JOIN prfsymboltree prf ON psd.symbolid = prf.symbolid and DATE_TRUNC('day', prf.enddate) = DATE_TRUNC('day', psp.enddate) LEFT JOIN LATERAL ( SELECT ph.hour, (ave + stddev) AS volatility, rank() over (ORDER BY (ave + stddev) DESC) AS rank FROM powerstats_hourly ph WHERE ph.symbolid = psd.hourlysymbolid AND DATE_TRUNC('day', ph.enddate) = DATE_TRUNC('day', prf.enddate)) rank_query ON true WHERE prf.brokerid = '538' AND rank_query.hour = floor((psp.fromtime) / 60) AND volatility > 0 ORDER BY rank DESC, rank_rounded DESC, exchange, symbol, groupid) sub order by brokerid, groupid, symbolid;
Date: 2025-11-25 17:16:02 Duration: 810ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH last_candle AS ( SELECT acs.symbolid AS symbolid, acs.latestpricedatetime AS latest_candle_time, bsl.brokerid AS broker_id, coalesce(bim.code, s.symbol) AS symbol, bim.code AS symbol_mapping, s.exchange AS exchange, s.timegranularity AS timegranularity FROM autochartist_symbolupdates acs INNER JOIN brokersymbollist bsl ON acs.symbolid = bsl.symbolid INNER JOIN symbols s ON acs.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss ON s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE bsl.brokerid = '621' AND s.deleted = 0 AND s.nonliquid = 0 AND acs.latestpricedatetime IS NOT NULL ) SELECT * FROM ( SELECT lc.broker_id AS brokerid, prf.groupid, psp.symbolid, prf.longname, psd.hourlysymbolid, lc.symbol, lc.exchange, psp.enddate, psp.dayofweek, psp.fromtime, floor(psp.fromtime / 60) + 6 as SAST_HH, mod(cast(psp.fromtime as int), 60) as SAST_MM, current_timestamp AS datetime, (PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice AS closingprice, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_15 + psp.stddev_15) / 2.0) AS low_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_15 + psp.stddev_15) / 2.0) AS high_15, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_30 + psp.stddev_30) / 2.0) AS low_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_30 + psp.stddev_30) / 2.0) AS high_30, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_60 + psp.stddev_60) / 2.0) AS low_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_60 + psp.stddev_60) / 2.0) AS high_60, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_240 + psp.stddev_240) / 2.0) AS low_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_240 + psp.stddev_240) / 2.0) AS high_240, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice - (psp.ave_1440 + psp.stddev_1440) / 2.0) AS low_1440, ((PowerStatsLatestPRFPrice (cast(psp.symbolid as bigint), psd.trumpettimegranularity)).closingprice + (psp.ave_1440 + psp.stddev_1440) / 2.0) AS high_1440, dtt.absolutetimezoneoffset AS datafeedtimezoneoffset, dtt.timezone AS datafeedtimezonename, (round((cast(25 as float) - rank) / 24 * 10)) as rank_rounded, ((cast(25 as float) - rank) / 24 * 10) as rank FROM last_candle lc INNER JOIN downloadersymbolsettings dss ON lc.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON TRIM(dss.classname) = TRIM(dtt.classname) and dtt.dayofweek = 3 -- assuming timezone is same for whole week. INNER JOIN powerstats_symboldata psd ON psd.symbolid = lc.symbolid LEFT OUTER JOIN powerstats_trumpet psp ON psd.trumpetsymbolid = psp.symbolid AND psp.dayofweek = extract(dow from lc.latest_candle_time) AND psp.fromtime = cast(extract('hour' from lc.latest_candle_time) as integer) * 60 + extract('minute' from (cast(extract('minute' from lc.latest_candle_time) as integer) / 15) * 15 * interval '1 minutes') INNER JOIN prfsymboltree prf ON psd.symbolid = prf.symbolid and DATE_TRUNC('day', prf.enddate) = DATE_TRUNC('day', psp.enddate) LEFT JOIN LATERAL ( SELECT ph.hour, (ave + stddev) AS volatility, rank() over (ORDER BY (ave + stddev) DESC) AS rank FROM powerstats_hourly ph WHERE ph.symbolid = psd.hourlysymbolid AND DATE_TRUNC('day', ph.enddate) = DATE_TRUNC('day', prf.enddate)) rank_query ON true WHERE prf.brokerid = '621' AND rank_query.hour = floor((psp.fromtime) / 60) AND volatility > 0 ORDER BY rank DESC, rank_rounded DESC, exchange, symbol, groupid) sub order by brokerid, groupid, symbolid;
Date: 2025-11-25 17:16:05 Duration: 806ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
14 16ms 528ms 99ms 150 14s986ms select distinct a.symbolid, p.resultuid, case when a.breakout >= ? then ? else ? end as type, a.resultid, a.bandwidth, a.patternlengthbars, a.patternendtime, a.resy0, a.supporty0, a.resy1, a.supporty1, a.direction, a.predictionpriceto, a.patternendprice, a.predictionpricefrom, a.resx0, a.supportx0, a.resgradient, a.supportgradient from relevance_autochartist_results p inner join autochartist_results a on p.resultuid = a.resultuid inner join autochartist_stocklist asl on a.symbolid = asl.symbolid where asl.enabled = ? and asl.recognitionengine ilike ?;Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Nov 25 17 150 14s986ms 99ms [ User: postgres - Total duration: 14s986ms - Times executed: 150 ]
[ Application: [unknown] - Total duration: 14s986ms - Times executed: 150 ]
-
SELECT distinct a.symbolid, p.resultuid, case when a.breakout >= 0 then 1 else 2 end as type, a.resultid, a.bandwidth, a.patternlengthbars, a.patternendtime, a.resy0, a.supporty0, a.resy1, a.supporty1, a.direction, a.predictionpriceto, a.patternendprice, a.predictionpricefrom, a.resx0, a.supportx0, a.resgradient, a.supportgradient FROM relevance_autochartist_results p INNER JOIN autochartist_results a ON p.resultuid = a.resultuid INNER JOIN autochartist_stocklist asl ON a.symbolid = asl.symbolid WHERE asl.enabled = 1 AND asl.recognitionengine ILIKE 'PEPPERSTONE - 1';
Date: 2025-11-25 17:16:08 Duration: 528ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
SELECT distinct a.symbolid, p.resultuid, case when a.breakout >= 0 then 1 else 2 end as type, a.resultid, a.bandwidth, a.patternlengthbars, a.patternendtime, a.resy0, a.supporty0, a.resy1, a.supporty1, a.direction, a.predictionpriceto, a.patternendprice, a.predictionpricefrom, a.resx0, a.supportx0, a.resgradient, a.supportgradient FROM relevance_autochartist_results p INNER JOIN autochartist_results a ON p.resultuid = a.resultuid INNER JOIN autochartist_stocklist asl ON a.symbolid = asl.symbolid WHERE asl.enabled = 1 AND asl.recognitionengine ILIKE 'ATFX - 1';
Date: 2025-11-25 17:01:01 Duration: 351ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
SELECT distinct a.symbolid, p.resultuid, case when a.breakout >= 0 then 1 else 2 end as type, a.resultid, a.bandwidth, a.patternlengthbars, a.patternendtime, a.resy0, a.supporty0, a.resy1, a.supporty1, a.direction, a.predictionpriceto, a.patternendprice, a.predictionpricefrom, a.resx0, a.supportx0, a.resgradient, a.supportgradient FROM relevance_autochartist_results p INNER JOIN autochartist_results a ON p.resultuid = a.resultuid INNER JOIN autochartist_stocklist asl ON a.symbolid = asl.symbolid WHERE asl.enabled = 1 AND asl.recognitionengine ILIKE 'ATFX - 1';
Date: 2025-11-25 17:16:04 Duration: 317ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
15 18ms 319ms 74ms 150 11s106ms select distinct k.symbolid, p.resultuid, k.symbolid, k.bandwidth, k.direction, k.patternendtime, k.patternprice, k.patternlengthbars, k.breakoutbars, k.uniquepointsvalue, k.predictionpricefrom, k.predictionpriceto, k.furthestprice, k.patternclassid from relevance_keylevels_results p inner join keylevels_results k on p.resultuid = k.resultuid inner join autochartist_stocklist asl on k.symbolid = asl.symbolid where k.patternclassid in (...) and asl.enabled = ? and asl.recognitionengine ilike ?;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Nov 25 17 150 11s106ms 74ms [ User: postgres - Total duration: 11s106ms - Times executed: 150 ]
[ Application: [unknown] - Total duration: 11s106ms - Times executed: 150 ]
-
SELECT DISTINCT k.symbolid, p.resultuid, k.symbolid, k.bandwidth, k.direction, k.patternendtime, k.patternprice, k.patternlengthbars, k.breakoutbars, k.uniquepointsvalue, k.predictionpricefrom, k.predictionpriceto, k.furthestprice, k.patternclassid FROM relevance_keylevels_results p INNER JOIN keylevels_results k ON p.resultuid = k.resultuid INNER JOIN autochartist_stocklist asl ON k.symbolid = asl.symbolid WHERE k.patternclassid in (1, 2) AND asl.enabled = 1 AND asl.recognitionengine ILIKE 'HOTFOREX - 1';
Date: 2025-11-25 17:02:17 Duration: 319ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
SELECT DISTINCT k.symbolid, p.resultuid, k.symbolid, k.bandwidth, k.direction, k.patternendtime, k.patternprice, k.patternlengthbars, k.breakoutbars, k.uniquepointsvalue, k.predictionpricefrom, k.predictionpriceto, k.furthestprice, k.patternclassid FROM relevance_keylevels_results p INNER JOIN keylevels_results k ON p.resultuid = k.resultuid INNER JOIN autochartist_stocklist asl ON k.symbolid = asl.symbolid WHERE k.patternclassid in (1, 2) AND asl.enabled = 1 AND asl.recognitionengine ILIKE 'AXIORY - 1';
Date: 2025-11-25 17:16:10 Duration: 284ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
SELECT DISTINCT k.symbolid, p.resultuid, k.symbolid, k.bandwidth, k.direction, k.patternendtime, k.patternprice, k.patternlengthbars, k.breakoutbars, k.uniquepointsvalue, k.predictionpricefrom, k.predictionpriceto, k.furthestprice, k.patternclassid FROM relevance_keylevels_results p INNER JOIN keylevels_results k ON p.resultuid = k.resultuid INNER JOIN autochartist_stocklist asl ON k.symbolid = asl.symbolid WHERE k.patternclassid in (1, 2) AND asl.enabled = 1 AND asl.recognitionengine ILIKE 'Alpari - 1';
Date: 2025-11-25 17:00:47 Duration: 271ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
16 0ms 52ms 4ms 3,868 18s208ms select t.pricedatetime as pricedatetime, t.open as open, t.high as high, t.low as low, t.close "..." close, t.volume as volume, t.bsf as bsf from t60 t where t.symbolid = ? and (bsf = ? or bsf is null) and pricedatetime >= ? and pricedatetime <= ? order by pricedatetime desc limit ?;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Nov 25 17 3,868 18s208ms 4ms [ User: postgres - Total duration: 18s208ms - Times executed: 3868 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 18s208ms - Times executed: 3868 ]
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840233385428300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:00:03 Duration: 52ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840233929139300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:58:07 Duration: 51ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
SELECT T.PriceDateTime AS pricedatetime, T.Open AS open, T.High AS high, T.Low AS low, T.Close AS close, T.Volume AS volume, T.BSF AS bsf FROM T60 T WHERE T.symbolid = '515840216981120300' AND (BSF = '0' OR BSF IS NULL) AND pricedatetime >= '1900-01-01 00:00:00' AND pricedatetime <= '2900-01-01 00:00:00' ORDER BY PriceDateTime DESC LIMIT 700;
Date: 2025-11-25 17:00:00 Duration: 46ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
17 0ms 41ms 4ms 1,212 5s129ms 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 #17
Day Hour Count Duration Avg duration Nov 25 17 1,212 5s129ms 4ms [ User: postgres - Total duration: 5s129ms - Times executed: 1212 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 5s129ms - Times executed: 1212 ]
-
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 = 'HOTFOREX' AND dss.downloadfrequency = '15' AND dss.symbolid = t.symbolid AND s.symbolid = dss.symbolid AND dss.enabled = 1 AND s.deleted = 0 AND dss.downloadersymbol IN ('NZDCAD', 'NZDUSD', 'MCARD', 'EURNZD', 'LLOY', 'EURCHF', 'EURDKK', 'MSFT', 'HLT', 'MCDON', 'LVMH.K', 'Mapfre.K', 'PFIZER', 'IBM', 'EURCAD', 'EURUSD', 'EURNOK', 'HSBCL', 'GBPCAD', 'GBPUSD', 'GE', 'GOOGLE', 'INTEL', 'Netflix', 'EURGBP', 'EURPLN', 'EURJPY', 'GBPCHF', 'NETH25', 'EURHUF', 'ILMN', 'NZDCHF', 'Palladium', 'GBPNZD', 'GS', 'Iberdrola.K', 'FRA40', 'GBPJPY', 'GBPAUD', 'NZDJPY', 'GBPZAR', 'Lufthansa.K', 'JPN225') AND t.pricedatetime > now() - INTERVAL '2 days') AS ranked_candles_table WHERE rn = 1;
Date: 2025-11-25 17:00:59 Duration: 41ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 'HOTFOREX' AND dss.downloadfrequency = '15' AND dss.symbolid = t.symbolid AND s.symbolid = dss.symbolid AND dss.enabled = 1 AND s.deleted = 0 AND dss.downloadersymbol IN ('AMEX', 'AMAZON', 'APPLE', 'ANGLO', 'CHEVRON', 'AUDCHF', 'CISCO', 'AUS200', 'Coffee', 'Cocoa', 'AUDNZD', 'CADCHF', 'BOA', 'COKE', 'Adidas.K', 'BPLON', 'Daimler.K', 'Copper', 'CHFJPY', 'BBVA.K', 'Danone.K', 'CADJPY', 'AUDCAD', 'BARC', 'AUDUSD', 'BOEING', 'ALIBABA', 'EBAY', 'AUDJPY', 'EURAUD', 'ALCOA', 'Bayer.K') AND t.pricedatetime > now() - INTERVAL '2 days') AS ranked_candles_table WHERE rn = 1;
Date: 2025-11-25 17:00:57 Duration: 40ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 'HOTFOREX' AND dss.downloadfrequency = '15' AND dss.symbolid = t.symbolid AND s.symbolid = dss.symbolid AND dss.enabled = 1 AND s.deleted = 0 AND dss.downloadersymbol IN ('USDDKK', 'USDHKD', 'USDTRY', 'UK100', 'UKOIL', 'USDHUF', 'Telefon.K', 'SPA35', 'USA30', 'Platinum', 'QCOM', 'USA100', 'SUI20', 'Sugar', 'Santander.K', 'USDCHF', 'USDCNH', 'VOD', 'TESCO', 'RollsRoyce', 'USDCZK', 'Tesla', 'RIO', 'TEVA', 'USDCAD') AND t.pricedatetime > now() - INTERVAL '2 days') AS ranked_candles_table WHERE rn = 1;
Date: 2025-11-25 17:01:01 Duration: 29ms Database: acaweb_fx User: postgres Remote: 192.168.4.142 Application: PostgreSQL JDBC Driver Bind query: yes
18 0ms 36ms 2ms 7,905 20s889ms 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 #18
Day Hour Count Duration Avg duration Nov 25 17 7,905 20s889ms 2ms [ User: postgres - Total duration: 20s889ms - Times executed: 7905 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 20s888ms - Times executed: 7904 ]
[ Application: [unknown] - Total duration: 0ms - Times executed: 1 ]
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607218311402819301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607218311402819301' OR a.resultuid = '607218311402819301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:02:25 Duration: 36ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607215951125994301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607215951125994301' OR a.resultuid = '607215951125994301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:47:03 Duration: 36ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
-
WITH rar_max as ( SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) 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 = '607215734315944301' 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 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 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 1 = 1 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 = '607215734315944301' OR a.resultuid = '607215734315944301') AND dtt.dayofweek = 3;
Date: 2025-11-25 17:02:25 Duration: 35ms Database: acaweb_fx User: postgres Remote: 192.168.1.15 Application: PostgreSQL JDBC Driver Bind query: yes
19 0ms 25ms 2ms 19,395 45s899ms 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 #19
Day Hour Count Duration Avg duration Nov 25 17 19,395 45s899ms 2ms [ User: postgres - Total duration: 45s899ms - Times executed: 19395 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 45s899ms - Times executed: 19395 ]
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '558' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'ES35' OR dss.downloadersymbol = 'ES35') AND dss.enabled = 1;
Date: 2025-11-25 17:00:04 Duration: 25ms Database: acaweb_fx User: postgres Remote: 192.168.1.145 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '538' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'USA100' OR dss.downloadersymbol = 'USA100') AND dss.enabled = 1;
Date: 2025-11-25 17:22:33 Duration: 22ms Database: acaweb_fx User: postgres Remote: 192.168.0.74 Application: PostgreSQL JDBC Driver Bind query: yes
-
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 = 3 INNER JOIN brokersymbollist bsl ON bsl.symbolid = s.symbolid WHERE bsl.brokerid = '558' AND ('0' = 0 OR s.timegranularity = '0') AND (s.symbol = 'AUDSGD' OR dss.downloadersymbol = 'AUDSGD') AND dss.enabled = 1;
Date: 2025-11-25 17:15:04 Duration: 21ms Database: acaweb_fx User: postgres Remote: 192.168.1.20 Application: PostgreSQL JDBC Driver Bind query: yes
20 0ms 18ms 1ms 4,038 7s546ms 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 #20
Day Hour Count Duration Avg duration Nov 25 17 4,038 7s546ms 1ms [ User: postgres - Total duration: 7s546ms - Times executed: 4038 ]
[ Application: [unknown] - Total duration: 7s546ms - Times executed: 4038 ]
-
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 (8.000000000000000000000000000000, - 1, 2, '2025-11-25 15:02:47'::timestamp without time zone, '2025-11-25 16:30:00', 0.624500000000001165300000000000, 7, 288, 43.637000000000000460000000000000, '2025-11-20 10:30:00', '2025-11-19 19:00:00', '2025-11-19 06:00:00', '2025-11-19 03:00:00', '2025-11-18 19:30:00', '2025-11-17 13:00:00', '2025-11-17 10:30:00', '', '', '', 552, 43.502349999999999850000000000000, '2025-11-25 16:30:00'::timestamp without time zone, '2025-11-25 16:30:00', 44.159999999999996590000000000000, 0.134649999999999991900000000000, - 1, 515840233925534300, 0.000000000000000000000000000000, 0.000000000000000000000000000000, '1900-01-01 00:00:00'::timestamp without time zone, 0, '|515840233925534300|43.637|2|2025-11-25 16:30:00|2025-11-25 16:30:00|-1|-1', 44.498809999999998860000000000000, 0.861809999999998410600000000000, 2, '2025-11-17 10:30:00', 44.759999999999998010000000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:02:47 Duration: 18ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
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 (4.000000000000000000000000000000, - 1, 1, '2025-11-25 15:01:14'::timestamp without time zone, '', 0.500000000000000000000000000000, 4, 82, 0.523449999999999970800000000000, '2025-11-25 12:00:00', '2025-11-24 09:00:00', '2025-11-20 07:00:00', '2025-11-20 02:00:00', '', '', '', '', '', '', 205, 0.523783499999999957400000000000, '2025-11-25 16:00:00'::timestamp without time zone, '2025-11-25 16:00:00', 0.000000000000000000000000000000, 0.000333500000000003281700000000, - 1, 515840245860902300, 0.000000000000000000000000000000, 0.000000000000000000000000000000, '1900-01-01 00:00:00'::timestamp without time zone, 0, '|515840245860902300|0.52345|1|2025-11-25 16:00:00|-1|-1', 0.000000000000000000000000000000, 0.000000000000000000000000000000, 3, '2025-11-20 02:00:00', 0.523930000000000006800000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:01:14 Duration: 12ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
-
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 (6.000000000000000000000000000000, 1, 2, '2025-11-25 15:02:55'::timestamp without time zone, '', 0.000000000000000000000000000000, 3, 48, 61.792999999999999260000000000000, '2025-11-24 11:00:00', '2025-11-21 16:00:00', '2025-11-21 12:00:00', '', '', '', '', '', '', '', 44, 61.736649999999997360000000000000, '2025-11-25 16:00:00'::timestamp without time zone, '2025-11-25 16:00:00', 61.670999999999999380000000000000, 0.058849999999999999540000000000, - 1, 515840249413895300, 60.769400000000004520000000000000, 61.332900000000002200000000000000, '2025-11-25 16:00:00'::timestamp without time zone, 44, '|515840249413895300|61.793|2|2025-11-25 16:00:00|-1|1', 62.830069999999999200000000000000, 1.159069999999999823000000000000, 1, '2025-11-21 12:00:00', 63.396000000000000800000000000000, 0, CURRENT_TIMESTAMP::timestamp without time zone) ON CONFLICT DO NOTHING;
Date: 2025-11-25 17:02:56 Duration: 12ms Database: acaweb_fx User: postgres Remote: 127.0.0.1 Application: [unknown]
Time consuming prepare
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 53s578ms 46,938 0ms 34ms 1ms SELECT ;Times Reported Time consuming prepare #1
Day Hour Count Duration Avg duration Nov 25 17 46,938 53s578ms 1ms [ User: postgres - Total duration: 1m41s - Times executed: 46938 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1m41s - Times executed: 46937 ]
[ Application: [unknown] - Total duration: 1ms - Times executed: 1 ]
-
SELECT ;
Date: 2025-11-25 17:37:53 Duration: 34ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
-
SELECT ;
Date: 2025-11-25 17:56:13 Duration: 22ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
-
SELECT ;
Date: 2025-11-25 17:17:30 Duration: 21ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
2 13s491ms 9,936 0ms 19ms 1ms WITH rar_max as ( ;Times Reported Time consuming prepare #2
Day Hour Count Duration Avg duration 17 9,936 13s491ms 1ms [ User: postgres - Total duration: 2h18m15s - Times executed: 9936 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 2h18m15s - Times executed: 9936 ]
-
WITH rar_max as ( ;
Date: 2025-11-25 17:42:42 Duration: 19ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
-
WITH rar_max as ( ;
Date: 2025-11-25 17:10:58 Duration: 18ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
-
WITH rar_max as ( ;
Date: 2025-11-25 17:18:05 Duration: 15ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
3 3s944ms 26,761 0ms 16ms 0ms SET extra_float_digits = 3;Times Reported Time consuming prepare #3
Day Hour Count Duration Avg duration 17 26,761 3s944ms 0ms [ User: postgres - Total duration: 261ms - Times executed: 26761 ]
[ Application: [unknown] - Total duration: 261ms - Times executed: 26761 ]
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:47:09 Duration: 16ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:59:55 Duration: 12ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:59:44 Duration: 10ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
4 2s903ms 44,359 0ms 22ms 0ms select 1;Times Reported Time consuming prepare #4
Day Hour Count Duration Avg duration 17 44,359 2s903ms 0ms [ User: postgres - Total duration: 216ms - Times executed: 44359 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 216ms - Times executed: 44359 ]
-
select 1;
Date: 2025-11-25 17:07:47 Duration: 22ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
-
select 1;
Date: 2025-11-25 17:32:35 Duration: 15ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
-
select 1;
Date: 2025-11-25 17:29:39 Duration: 10ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
5 1s831ms 1,344 0ms 5ms 1ms SELECT symbolid, ;Times Reported Time consuming prepare #5
Day Hour Count Duration Avg duration 17 1,344 1s831ms 1ms [ User: postgres - Total duration: 5s327ms - Times executed: 1344 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 5s327ms - Times executed: 1344 ]
-
SELECT symbolid, ;
Date: 2025-11-25 17:00:05 Duration: 5ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
SELECT symbolid, ;
Date: 2025-11-25 17:17:52 Duration: 5ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
SELECT symbolid, ;
Date: 2025-11-25 17:17:26 Duration: 4ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
6 1s138ms 862 0ms 4ms 1ms SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;Times Reported Time consuming prepare #6
Day Hour Count Duration Avg duration 17 862 1s138ms 1ms [ User: postgres - Total duration: 1s370ms - Times executed: 862 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1s370ms - Times executed: 862 ]
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-11-25 17:00:57 Duration: 4ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-11-25 17:15:04 Duration: 3ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-11-25 17:31:00 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
7 400ms 26,735 0ms 9ms 0ms SET application_name = 'PostgreSQL JDBC Driver';Times Reported Time consuming prepare #7
Day Hour Count Duration Avg duration 17 26,735 400ms 0ms [ User: postgres - Total duration: 363ms - Times executed: 26735 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 363ms - Times executed: 26735 ]
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:32:06 Duration: 9ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:37:36 Duration: 6ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:27:33 Duration: 5ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
8 326ms 3,402 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 #8
Day Hour Count Duration Avg duration 17 3,402 326ms 0ms [ User: postgres - Total duration: 2s389ms - Times executed: 3402 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 2s389ms - Times executed: 3402 ]
-
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: 2025-11-25 17:31:11 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
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: 2025-11-25 17:41:43 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
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: 2025-11-25 17:00:57 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
9 234ms 2,105 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 #9
Day Hour Count Duration Avg duration 17 2,105 234ms 0ms [ User: postgres - Total duration: 1s555ms - Times executed: 2105 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1s555ms - Times executed: 2105 ]
-
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: 2025-11-25 17:16:32 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
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: 2025-11-25 17:02:33 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
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: 2025-11-25 17:02:01 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
10 203ms 1,224 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 17 1,224 203ms 0ms [ User: postgres - Total duration: 3s214ms - Times executed: 1224 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 3s214ms - Times executed: 1224 ]
-
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: 2025-11-25 17:02:01 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
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: 2025-11-25 17:31:08 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
-
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: 2025-11-25 17:47:38 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142
11 107ms 16 4ms 8ms 6ms with sym_info as ( ;Times Reported Time consuming prepare #11
Day Hour Count Duration Avg duration 17 16 107ms 6ms [ User: postgres - Total duration: 19s430ms - Times executed: 16 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 19s430ms - Times executed: 16 ]
-
with sym_info as ( ;
Date: 2025-11-25 17:51:41 Duration: 8ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.238
-
with sym_info as ( ;
Date: 2025-11-25 17:36:41 Duration: 7ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.238
-
with sym_info as ( ;
Date: 2025-11-25 17:51:52 Duration: 7ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.238
12 66ms 18 2ms 10ms 3ms 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 17 18 66ms 3ms [ User: postgres - Total duration: 51ms - Times executed: 18 ]
[ Application: [unknown] - Total duration: 51ms - Times executed: 18 ]
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-11-25 17:11:02 Duration: 10ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-11-25 17:11:02 Duration: 5ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-11-25 17:21:00 Duration: 5ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
13 58ms 52 0ms 3ms 1ms WITH last_candle AS ( ;Times Reported Time consuming prepare #13
Day Hour Count Duration Avg duration 17 52 58ms 1ms [ User: postgres - Total duration: 20s109ms - Times executed: 52 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 20s109ms - Times executed: 52 ]
-
WITH last_candle AS ( ;
Date: 2025-11-25 17:20:00 Duration: 3ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.20
-
WITH last_candle AS ( ;
Date: 2025-11-25 17:36:00 Duration: 3ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.20
-
WITH last_candle AS ( ;
Date: 2025-11-25 17:32:00 Duration: 3ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.145
14 53ms 36 1ms 2ms 1ms select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;Times Reported Time consuming prepare #14
Day Hour Count Duration Avg duration 17 36 53ms 1ms [ User: postgres - Total duration: 144ms - Times executed: 36 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 144ms - Times executed: 36 ]
-
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2025-11-25 17:32:14 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2025-11-25 17:22:12 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2025-11-25 17:51:59 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
15 34ms 36 0ms 1ms 0ms select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;Times Reported Time consuming prepare #15
Day Hour Count Duration Avg duration 17 36 34ms 0ms [ User: postgres - Total duration: 51ms - Times executed: 36 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 51ms - Times executed: 36 ]
-
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2025-11-25 17:57:19 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2025-11-25 17:02:09 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2025-11-25 17:17:12 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
16 33ms 18 1ms 2ms 1ms with wh_patitioned as ( ;Times Reported Time consuming prepare #16
Day Hour Count Duration Avg duration 17 18 33ms 1ms [ User: postgres - Total duration: 834ms - Times executed: 18 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 834ms - Times executed: 18 ]
-
with wh_patitioned as ( ;
Date: 2025-11-25 17:03:36 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.145
-
with wh_patitioned as ( ;
Date: 2025-11-25 17:42:38 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.145
-
with wh_patitioned as ( ;
Date: 2025-11-25 17:21:13 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.145
17 24ms 4 1ms 21ms 6ms select count(*) from datafeeds_latestrun where feedname ilike 'icmarkets' and ((latestrxtime > current_timestamp - interval '30 minutes' and LatestDBWriteTime > current_timestamp - interval '30 minutes') or (LatestDBWriteTime > current_timestamp - interval '45 minutes' and lateststartuptime > current_timestamp - interval '15 minutes'));Times Reported Time consuming prepare #17
Day Hour Count Duration Avg duration 17 4 24ms 6ms [ User: postgres - Total duration: 0ms - Times executed: 4 ]
[ Application: [unknown] - Total duration: 0ms - Times executed: 4 ]
-
select count(*) from datafeeds_latestrun where feedname ilike 'icmarkets' and ((latestrxtime > current_timestamp - interval '30 minutes' and LatestDBWriteTime > current_timestamp - interval '30 minutes') or (LatestDBWriteTime > current_timestamp - interval '45 minutes' and lateststartuptime > current_timestamp - interval '15 minutes'));
Date: 2025-11-25 17:10:02 Duration: 21ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
-
select count(*) from datafeeds_latestrun where feedname ilike 'icmarkets' and ((latestrxtime > current_timestamp - interval '30 minutes' and LatestDBWriteTime > current_timestamp - interval '30 minutes') or (LatestDBWriteTime > current_timestamp - interval '45 minutes' and lateststartuptime > current_timestamp - interval '15 minutes'));
Date: 2025-11-25 17:10:02 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select count(*) from datafeeds_latestrun where feedname ilike 'icmarkets' and ((latestrxtime > current_timestamp - interval '30 minutes' and LatestDBWriteTime > current_timestamp - interval '30 minutes') or (LatestDBWriteTime > current_timestamp - interval '45 minutes' and lateststartuptime > current_timestamp - interval '15 minutes'));
Date: 2025-11-25 17:40:02 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
18 16ms 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 #18
Day Hour Count Duration Avg duration 17 6 16ms 2ms [ User: postgres - Total duration: 11ms - Times executed: 6 ]
[ Application: [unknown] - Total duration: 11ms - Times executed: 6 ]
-
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: 2025-11-25 17:10:05 Duration: 3ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
-
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: 2025-11-25 17:00:04 Duration: 3ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
-
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: 2025-11-25 17:30:05 Duration: 3ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
19 16ms 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 17 24 16ms 0ms [ User: postgres - Total duration: 59ms - Times executed: 24 ]
[ Application: [unknown] - Total duration: 59ms - Times executed: 24 ]
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2025-11-25 17:45:00 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2025-11-25 17:10:03 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2025-11-25 17:50:02 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
20 13ms 5 2ms 2ms 2ms 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 #20
Day Hour Count Duration Avg duration 17 5 13ms 2ms [ User: postgres - Total duration: 30s330ms - Times executed: 5 ]
[ Application: [unknown] - Total duration: 30s330ms - Times executed: 5 ]
-
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: 2025-11-25 17:50:02 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
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: 2025-11-25 17:40:02 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
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: 2025-11-25 17:00:03 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
Time consuming bind
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 2m8s 167,293 0ms 33ms 0ms SELECT ;Times Reported Time consuming bind #1
Day Hour Count Duration Avg duration Nov 25 17 167,293 2m8s 0ms [ User: postgres - Total duration: 4m41s - Times executed: 167293 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 4m41s - Times executed: 167289 ]
[ Application: [unknown] - Total duration: 2ms - Times executed: 4 ]
-
SELECT ;
Date: 2025-11-25 17:11:04 Duration: 33ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15 parameters: $1 = '958', $2 = '958', $3 = '515840249413895300'
-
SELECT ;
Date: 2025-11-25 17:02:25 Duration: 30ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15 parameters: $1 = '958', $2 = '958', $3 = '515840249417197300'
-
SELECT ;
Date: 2025-11-25 17:01:17 Duration: 28ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15 parameters: $1 = '958', $2 = '958', $3 = '515840243149112300'
2 1m36s 14,142 0ms 68ms 6ms WITH rar_max as ( ;Times Reported Time consuming bind #2
Day Hour Count Duration Avg duration 17 14,142 1m36s 6ms [ User: postgres - Total duration: 2h59m33s - Times executed: 14142 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 2h50m9s - Times executed: 14081 ]
[ Application: [unknown] - Total duration: 9m24s - Times executed: 61 ]
-
WITH rar_max as ( ;
Date: 2025-11-25 17:02:21 Duration: 68ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15 parameters: $1 = '558', $2 = '7', $3 = '15', $4 = '30', $5 = '60', $6 = '120', $7 = '240', $8 = '480', $9 = '1440', $10 = '0', $11 = '', $12 = '160', $13 = 'AUDSGD', $14 = 'CHFSGD', $15 = 'EURDKK', $16 = 'EURHKD', $17 = 'EURNOK', $18 = 'EURPLN', $19 = 'EURSEK', $20 = 'EURSGD', $21 = 'EURTRY', $22 = 'EURZAR', $23 = 'GBPDKK', $24 = 'GBPNOK', $25 = 'GBPSEK', $26 = 'GBPSGD', $27 = 'NOKJPY', $28 = 'NOKSEK', $29 = 'SEKJPY', $30 = 'SGDJPY', $31 = 'USDCNH', $32 = 'USDCZK', $33 = 'USDDKK', $34 = 'USDHKD', $35 = 'USDHUF', $36 = 'USDMXN', $37 = 'USDNOK', $38 = 'USDPLN', $39 = 'USDRUB', $40 = 'USDSEK', $41 = 'USDTHB', $42 = 'USDTRY', $43 = 'USDZAR', $44 = 'AUDUSD', $45 = 'EURUSD', $46 = 'GBPUSD', $47 = 'USDCAD', $48 = 'USDCHF', $49 = 'USDJPY', $50 = 'AUDCAD', $51 = 'AUDCHF', $52 = 'AUDJPY', $53 = 'AUDNZD', $54 = 'CADCHF', $55 = 'CADJPY', $56 = 'CHFJPY', $57 = 'EURAUD', $58 = 'EURCAD', $59 = 'EURCHF', $60 = 'EURGBP', $61 = 'EURJPY', $62 = 'EURNZD', $63 = 'GBPAUD', $64 = 'GBPCAD', $65 = 'GBPCHF', $66 = 'GBPJPY', $67 = 'GBPNZD', $68 = 'NZDCAD', $69 = 'NZDCHF', $70 = 'NZDJPY', $71 = 'NZDUSD', $72 = 'USDSGD', $73 = 'AUS200', $74 = 'DE30', $75 = 'ES35', $76 = 'F40', $77 = 'HK50', $78 = 'IT40', $79 = 'JP225', $80 = 'STOXX50', $81 = 'UK100', $82 = 'US2000', $83 = 'US30', $84 = 'US500', $85 = 'CHINA50', $86 = 'USTEC', $87 = 'XAGEUR', $88 = 'XAGUSD', $89 = 'XAUUSD', $90 = 'XAUEUR', $91 = 'XPDUSD', $92 = 'XPTUSD', $93 = 'AUDSGD', $94 = 'CHFSGD', $95 = 'EURDKK', $96 = 'EURHKD', $97 = 'EURNOK', $98 = 'EURPLN', $99 = 'EURSEK', $100 = 'EURSGD', $101 = 'EURTRY', $102 = 'EURZAR', $103 = 'GBPDKK', $104 = 'GBPNOK', $105 = 'GBPSEK', $106 = 'GBPSGD', $107 = 'NOKJPY', $108 = 'NOKSEK', $109 = 'SEKJPY', $110 = 'SGDJPY', $111 = 'USDCNH', $112 = 'USDCZK', $113 = 'USDDKK', $114 = 'USDHKD', $115 = 'USDHUF', $116 = 'USDMXN', $117 = 'USDNOK', $118 = 'USDPLN', $119 = 'USDRUB', $120 = 'USDSEK', $121 = 'USDTHB', $122 = 'USDTRY', $123 = 'USDZAR', $124 = 'AUDUSD', $125 = 'EURUSD', $126 = 'GBPUSD', $127 = 'USDCAD', $128 = 'USDCHF', $129 = 'USDJPY', $130 = 'AUDCAD', $131 = 'AUDCHF', $132 = 'AUDJPY', $133 = 'AUDNZD', $134 = 'CADCHF', $135 = 'CADJPY', $136 = 'CHFJPY', $137 = 'EURAUD', $138 = 'EURCAD', $139 = 'EURCHF', $140 = 'EURGBP', $141 = 'EURJPY', $142 = 'EURNZD', $143 = 'GBPAUD', $144 = 'GBPCAD', $145 = 'GBPCHF', $146 = 'GBPJPY', $147 = 'GBPNZD', $148 = 'NZDCAD', $149 = 'NZDCHF', $150 = 'NZDJPY', $151 = 'NZDUSD', $152 = 'USDSGD', $153 = 'AUS200', $154 = 'DE30', $155 = 'ES35', $156 = 'F40', $157 = 'HK50', $158 = 'IT40', $159 = 'JP225', $160 = 'STOXX50', $161 = 'UK100', $162 = 'US2000', $163 = 'US30', $164 = 'US500', $165 = 'CHINA50', $166 = 'USTEC', $167 = 'XAGEUR', $168 = 'XAGUSD', $169 = 'XAUUSD', $170 = 'XAUEUR', $171 = 'XPDUSD', $172 = 'XPTUSD', $173 = '700', $174 = '700', $175 = 't', $176 = '10', $177 = '10'
-
WITH rar_max as ( ;
Date: 2025-11-25 17:18:14 Duration: 62ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74 parameters: $1 = '689', $2 = '7', $3 = '15', $4 = '30', $5 = '60', $6 = '120', $7 = '240', $8 = '480', $9 = '1440', $10 = '0', $11 = '', $12 = '310', $13 = '#AAPL', $14 = '#ADS', $15 = '#AIG', $16 = '#ALV', $17 = '#AMZN', $18 = '#AXP', $19 = '#BA', $20 = '#BABA', $21 = '#BAC', $22 = '#BAS', $23 = '#BAYN', $24 = '#BEI', $25 = '#BIDU', $26 = '#BMW', $27 = '#C', $28 = '#CAT', $29 = '#CBK', $30 = '#CL', $31 = '#CSCO', $32 = '#CVX', $33 = '#DAI', $34 = '#DB1', $35 = '#DBK', $36 = '#DIS', $37 = '#DPW', $38 = '#DTE', $39 = '#EBAY', $40 = '#EON', $41 = '#F', $42 = '#FB', $43 = '#FDX', $44 = '#FME', $45 = '#GE', $46 = '#GM', $47 = '#GOOG', $48 = '#GS', $49 = '#HPQ', $50 = '#IBM', $51 = '#IFX', $52 = '#INTC', $53 = '#JD', $54 = '#JNJ', $55 = '#JPM', $56 = '#KO', $57 = '#LHA', $58 = '#LMT', $59 = '#MA', $60 = '#MCD', $61 = '#META', $62 = '#MMM', $63 = '#MSFT', $64 = '#MUV2', $65 = '#NFLX', $66 = '#NKE', $67 = '#NTES', $68 = '#ORCL', $69 = '#PFE', $70 = '#PG', $71 = '#QCOM', $72 = '#RACE', $73 = '#RWE', $74 = '#SAP', $75 = '#SIE', $76 = '#T', $77 = '#UBER', $78 = '#V', $79 = '#VOW', $80 = '#WB', $81 = '#XOM', $82 = 'AUDCAD', $83 = 'AUDCHF', $84 = 'AUDJPY', $85 = 'AUDNZD', $86 = 'AUDUSD', $87 = 'AUS200', $88 = 'BRENT', $89 = 'BTCUSD', $90 = 'CADCHF', $91 = 'CADJPY', $92 = 'CHFJPY', $93 = 'CHI50', $94 = 'ESP35', $95 = 'ETHUSD', $96 = 'EU50', $97 = 'EURAUD', $98 = 'EURCAD', $99 = 'EURCHF', $100 = 'EURGBP', $101 = 'EURHUF', $102 = 'EURJPY', $103 = 'EURNZD', $104 = 'EURPLN', $105 = 'EURUSD', $106 = 'FRA40', $107 = 'GBPAUD', $108 = 'GBPCAD', $109 = 'GBPCHF', $110 = 'GBPJPY', $111 = 'GBPNZD', $112 = 'GBPUSD', $113 = 'GER30', $114 = 'HK50', $115 = 'HKCH50', $116 = 'IT40', $117 = 'JP225', $118 = 'LTCUSD', $119 = 'NAS100', $120 = 'NZDCAD', $121 = 'NZDCHF', $122 = 'NZDJPY', $123 = 'NZDUSD', $124 = 'SPX500', $125 = 'UK100', $126 = 'US30', $127 = 'USDCAD', $128 = 'USDCHF', $129 = 'USDCNH', $130 = 'USDCZK', $131 = 'USDDKK', $132 = 'USDHKD', $133 = 'USDHUF', $134 = 'USDJPY', $135 = 'USDMXN', $136 = 'USDNOK', $137 = 'USDPLN', $138 = 'USDSEK', $139 = 'USDSGD', $140 = 'USDTRY', $141 = 'USDX', $142 = 'USDZAR', $143 = 'WTI', $144 = 'XAGUSD', $145 = 'XAUUSD', $146 = '#ADS', $147 = '#ALV', $148 = '#BAS', $149 = '#BAYN', $150 = '#BEI', $151 = '#BMW', $152 = '#CBK', $153 = '#DAI', $154 = '#DB1', $155 = '#DBK', $156 = '#DPW', $157 = '#DTE', $158 = '#EON', $159 = '#FME', $160 = '#IFX', $161 = '#LHA', $162 = '#MUV2', $163 = '#RWE', $164 = '#SAP', $165 = '#SIE', $166 = '#VOW', $167 = 'AUDCAD', $168 = 'AUDCHF', $169 = 'AUDJPY', $170 = 'AUDNZD', $171 = 'AUDUSD', $172 = 'CADCHF', $173 = 'CADJPY', $174 = 'CHFJPY', $175 = 'EURAUD', $176 = 'EURCAD', $177 = 'EURCHF', $178 = 'EURGBP', $179 = 'EURHUF', $180 = 'EURJPY', $181 = 'EURNZD', $182 = 'EURPLN', $183 = 'EURUSD', $184 = 'GBPAUD', $185 = 'GBPCAD', $186 = 'GBPCHF', $187 = 'GBPJPY', $188 = 'GBPNZD', $189 = 'GBPUSD', $190 = 'NZDCAD', $191 = 'NZDCHF', $192 = 'NZDJPY', $193 = 'NZDUSD', $194 = 'USDCAD', $195 = 'USDCHF', $196 = 'USDCNH', $197 = 'USDCZK', $198 = 'USDDKK', $199 = 'USDHKD', $200 = 'USDHUF', $201 = 'USDJPY', $202 = 'USDMXN', $203 = 'USDNOK', $204 = 'USDPLN', $205 = 'USDSEK', $206 = 'USDSGD', $207 = 'USDTRY', $208 = 'USDX', $209 = 'USDZAR', $210 = 'XAGUSD', $211 = 'XAUUSD', $212 = 'BTCUSD', $213 = 'ETHUSD', $214 = 'LTCUSD', $215 = 'AUDCAD', $216 = 'AUDCHF', $217 = 'AUDJPY', $218 = 'AUDNZD', $219 = 'CADCHF', $220 = 'CADJPY', $221 = 'CHFJPY', $222 = 'EURAUD', $223 = 'EURCAD', $224 = 'EURCHF', $225 = 'EURGBP', $226 = 'EURHUF', $227 = 'EURJPY', $228 = 'EURNZD', $229 = 'EURPLN', $230 = 'GBPAUD', $231 = 'GBPCAD', $232 = 'GBPCHF', $233 = 'GBPJPY', $234 = 'GBPNZD', $235 = 'NZDCAD', $236 = 'NZDCHF', $237 = 'NZDJPY', $238 = 'USDCNH', $239 = 'USDCZK', $240 = 'USDDKK', $241 = 'USDHKD', $242 = 'USDHUF', $243 = 'USDMXN', $244 = 'USDNOK', $245 = 'USDPLN', $246 = 'USDSEK', $247 = 'USDSGD', $248 = 'USDTRY', $249 = 'USDX', $250 = 'USDZAR', $251 = 'XAGUSD', $252 = 'XAUUSD', $253 = 'BRENT', $254 = 'WTI', $255 = 'AUS200', $256 = 'CHI50', $257 = 'ESP35', $258 = 'EU50', $259 = 'FRA40', $260 = 'GER30', $261 = 'HK50', $262 = 'HKCH50', $263 = 'IT40', $264 = 'JP225', $265 = 'NAS100', $266 = 'SPX500', $267 = 'UK100', $268 = 'US30', $269 = 'AUDUSD', $270 = 'EURUSD', $271 = 'GBPUSD', $272 = 'NZDUSD', $273 = 'USDCAD', $274 = 'USDCHF', $275 = 'USDJPY', $276 = '#AAPL', $277 = '#AIG', $278 = '#AMZN', $279 = '#AXP', $280 = '#BA', $281 = '#BABA', $282 = '#BAC', $283 = '#BIDU', $284 = '#C', $285 = '#CAT', $286 = '#CL', $287 = '#CSCO', $288 = '#CVX', $289 = '#DIS', $290 = '#EBAY', $291 = '#F', $292 = '#FB', $293 = '#FDX', $294 = '#GE', $295 = '#GM', $296 = '#GOOG', $297 = '#GS', $298 = '#HPQ', $299 = '#IBM', $300 = '#INTC', $301 = '#JD', $302 = '#JNJ', $303 = '#JPM', $304 = '#KO', $305 = '#LMT', $306 = '#MA', $307 = '#MCD', $308 = '#MMM', $309 = '#MSFT', $310 = '#NFLX', $311 = '#NKE', $312 = '#NTES', $313 = '#ORCL', $314 = '#PFE', $315 = '#PG', $316 = '#QCOM', $317 = '#RACE', $318 = '#T', $319 = '#UBER', $320 = '#V', $321 = '#WB', $322 = '#XOM', $323 = '700', $324 = '700', $325 = 't', $326 = '10', $327 = '10'
-
WITH rar_max as ( ;
Date: 2025-11-25 17:26:03 Duration: 56ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.145 parameters: $1 = 't', $2 = '529', $3 = '7', $4 = '15', $5 = '30', $6 = '60', $7 = '120', $8 = '240', $9 = '480', $10 = '1440', $11 = '0', $12 = '', $13 = '183', $14 = 'AUDUSD', $15 = 'EURUSD', $16 = 'GBPUSD', $17 = 'USDCAD', $18 = 'USDCHF', $19 = 'USDJPY', $20 = 'XAGAUD', $21 = 'XAGEUR', $22 = 'XAGUSD', $23 = 'XAUAUD', $24 = 'XAUCHF', $25 = 'XAUEUR', $26 = 'XAUGBP', $27 = 'XAUJPY', $28 = 'XAUUSD', $29 = 'XPDUSD', $30 = 'XPTUSD', $31 = 'AUS200', $32 = 'CA60', $33 = 'CHINAH', $34 = 'CN50', $35 = 'EUSTX50', $36 = 'FRA40', $37 = 'GER40', $38 = 'GERTEC30', $39 = 'HK50', $40 = 'JPN225', $41 = 'MidDE50', $42 = 'NAS100', $43 = 'NETH25', $44 = 'NOR25', $45 = 'SA40', $46 = 'SCI25', $47 = 'SPA35', $48 = 'SWI20', $49 = 'UK100', $50 = 'US2000', $51 = 'US30', $52 = 'US500', $53 = 'VIX', $54 = 'AUDCAD', $55 = 'AUDCHF', $56 = 'AUDNZD', $57 = 'AUDSGD', $58 = 'EURAUD', $59 = 'EURCHF', $60 = 'EURGBP', $61 = 'GBPAUD', $62 = 'GBPCHF', $63 = 'NZDUSD', $64 = 'CHFSGD', $65 = 'EURCZK', $66 = 'EURHUF', $67 = 'EURMXN', $68 = 'EURNOK', $69 = 'EURPLN', $70 = 'EURSEK', $71 = 'EURSGD', $72 = 'EURTRY', $73 = 'EURZAR', $74 = 'GBPMXN', $75 = 'GBPNOK', $76 = 'GBPSEK', $77 = 'GBPSGD', $78 = 'GBPTRY', $79 = 'NOKJPY', $80 = 'NOKSEK', $81 = 'NZDCAD', $82 = 'NZDCHF', $83 = 'SEKJPY', $84 = 'SGDJPY', $85 = 'USDCNH', $86 = 'USDCZK', $87 = 'USDHKD', $88 = 'USDHUF', $89 = 'USDMXN', $90 = 'USDNOK', $91 = 'USDPLN', $92 = 'USDSEK', $93 = 'USDSGD', $94 = 'USDTHB', $95 = 'USDTRY', $96 = 'USDZAR', $97 = 'ZARJPY', $98 = 'ADAUSD', $99 = 'AVAXUSD', $100 = 'BCHUSD', $101 = 'BNBUSD', $102 = 'BTCUSD', $103 = 'Crypto10', $104 = 'Crypto20', $105 = 'Crypto30', $106 = 'DOGEUSD', $107 = 'DOTUSD', $108 = 'EOSUSD', $109 = 'ETHUSD', $110 = 'LINKUSD', $111 = 'LTCUSD', $112 = 'MATICUSD', $113 = 'SOLUSD', $114 = 'UNIUSD', $115 = 'XLMUSD', $116 = 'XRPUSD', $117 = 'XTZUSD', $118 = 'EURX', $119 = 'JPYX', $120 = 'USDX', $121 = 'Gasoline', $122 = 'NatGas', $123 = 'SpotBrent', $124 = 'SpotCrude', $125 = 'AAPL.US', $126 = 'ABNB.US', $127 = 'AMD.US', $128 = 'AMZN.US', $129 = 'AXP.US', $130 = 'BA.US', $131 = 'BABA.US', $132 = 'BIDU.US', $133 = 'BYND.US', $134 = 'C.US', $135 = 'COIN.US', $136 = 'CRM.US', $137 = 'DIS.US', $138 = 'EA.US', $139 = 'GOOG.US', $140 = 'GS.US', $141 = 'IBM.US', $142 = 'JPM.US', $143 = 'LMT.US', $144 = 'MA.US', $145 = 'MCD.US', $146 = 'META.US', $147 = 'MRNA.US', $148 = 'MSFT.US', $149 = 'NFLX.US', $150 = 'NKE.US', $151 = 'NVDA.US', $152 = 'ORCL.US', $153 = 'PFE.US', $154 = 'PG.US', $155 = 'PLTR.US', $156 = 'PTON.US', $157 = 'PYPL.US', $158 = 'QCOM.US', $159 = 'SNAP.US', $160 = 'SPCE.US', $161 = 'SPY.US', $162 = 'T.US', $163 = 'TMUS.US', $164 = 'TSLA.US', $165 = 'UBER.US', $166 = 'V.US', $167 = 'WMT.US', $168 = 'ZM.US', $169 = 'Cattle', $170 = 'Cocoa', $171 = 'Coffee', $172 = 'Corn', $173 = 'Cotton', $174 = 'LDSugar', $175 = 'LeanHogs', $176 = 'LondonSugar', $177 = 'Lumber', $178 = 'OJ', $179 = 'Oats', $180 = 'RghRice', $181 = 'SoyMeal', $182 = 'SoyOil', $183 = 'Soybeans', $184 = 'Sugar', $185 = 'Wheat', $186 = 'AUDJPY', $187 = 'CADCHF', $188 = 'CADJPY', $189 = 'CHFJPY', $190 = 'EURCAD', $191 = 'EURJPY', $192 = 'EURNZD', $193 = 'GBPCAD', $194 = 'GBPJPY', $195 = 'GBPNZD', $196 = 'NZDJPY', $197 = '0', $198 = '', $199 = '500', $200 = '500', $201 = '0', $202 = '0', $203 = '0', $204 = 't', $205 = '10', $206 = '10'
3 3s728ms 163,040 0ms 7ms 0ms select 1;Times Reported Time consuming bind #3
Day Hour Count Duration Avg duration 17 163,038 3s728ms 0ms 18 2 0ms 0ms [ User: postgres - Total duration: 744ms - Times executed: 163040 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 743ms - Times executed: 162975 ]
[ Application: [unknown] - Total duration: 0ms - Times executed: 65 ]
-
select 1;
Date: 2025-11-25 17:56:13 Duration: 7ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
-
select 1;
Date: 2025-11-25 17:01:17 Duration: 7ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
-
select 1;
Date: 2025-11-25 17:00:04 Duration: 6ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.20
4 3s11ms 1,344 1ms 17ms 2ms SELECT symbolid, ;Times Reported Time consuming bind #4
Day Hour Count Duration Avg duration 17 1,344 3s11ms 2ms [ User: postgres - Total duration: 5s327ms - Times executed: 1344 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 5s327ms - Times executed: 1344 ]
-
SELECT symbolid, ;
Date: 2025-11-25 17:00:05 Duration: 17ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = 'BDSWISS', $2 = '60', $3 = 'USDMXN', $4 = 'USDPLN', $5 = 'USDSGD', $6 = 'USDNOK', $7 = 'USDSEK'
-
SELECT symbolid, ;
Date: 2025-11-25 17:15:59 Duration: 10ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = 'MILLENNIUMPF', $2 = '15', $3 = 'XAGUSD.ID'
-
SELECT symbolid, ;
Date: 2025-11-25 17:30:04 Duration: 7ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = 'BDSWISS', $2 = '30', $3 = 'USDJPY', $4 = 'USDMXN', $5 = 'USDPLN', $6 = 'USDDKK', $7 = 'USDCHF', $8 = 'USDNOK', $9 = 'USDCNH'
5 1s750ms 862 1ms 9ms 2ms SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;Times Reported Time consuming bind #5
Day Hour Count Duration Avg duration 17 862 1s750ms 2ms [ User: postgres - Total duration: 1s370ms - Times executed: 862 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1s370ms - Times executed: 862 ]
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-11-25 17:16:02 Duration: 9ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = 'PEPPERSTONE'
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-11-25 17:00:57 Duration: 6ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = 'HOTFOREX'
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-11-25 17:02:31 Duration: 5ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = 'BDSWISS'
6 943ms 27 0ms 72ms 34ms with wh_patitioned as ( ;Times Reported Time consuming bind #6
Day Hour Count Duration Avg duration 17 27 943ms 34ms [ User: postgres - Total duration: 1s94ms - Times executed: 27 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1s94ms - Times executed: 27 ]
-
with wh_patitioned as ( ;
Date: 2025-11-25 17:37:36 Duration: 72ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.145 parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
-
with wh_patitioned as ( ;
Date: 2025-11-25 17:03:36 Duration: 49ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.145 parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
-
with wh_patitioned as ( ;
Date: 2025-11-25 17:03:17 Duration: 48ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.20 parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
7 837ms 105 4ms 18ms 7ms WITH last_candle AS ( ;Times Reported Time consuming bind #7
Day Hour Count Duration Avg duration 17 105 837ms 7ms [ User: postgres - Total duration: 39s510ms - Times executed: 105 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 39s510ms - Times executed: 105 ]
-
WITH last_candle AS ( ;
Date: 2025-11-25 17:20:01 Duration: 18ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74 parameters: $1 = '667', $2 = '667'
-
WITH last_candle AS ( ;
Date: 2025-11-25 17:36:05 Duration: 18ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74 parameters: $1 = '667', $2 = '667'
-
WITH last_candle AS ( ;
Date: 2025-11-25 17:04:01 Duration: 17ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74 parameters: $1 = '667', $2 = '667'
8 613ms 16 28ms 45ms 38ms with sym_info as ( ;Times Reported Time consuming bind #8
Day Hour Count Duration Avg duration 17 16 613ms 38ms [ User: postgres - Total duration: 19s430ms - Times executed: 16 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 19s430ms - Times executed: 16 ]
-
with sym_info as ( ;
Date: 2025-11-25 17:51:41 Duration: 45ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.238 parameters: $1 = '620', $2 = 'Forex', $3 = 'Forex', $4 = '620', $5 = 'Forex', $6 = '620', $7 = '620', $8 = 'Forex', $9 = '620'
-
with sym_info as ( ;
Date: 2025-11-25 17:21:53 Duration: 44ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.238 parameters: $1 = '627', $2 = 'Forex', $3 = 'Forex', $4 = '627', $5 = 'Forex', $6 = '627', $7 = '627', $8 = 'Forex', $9 = '627'
-
with sym_info as ( ;
Date: 2025-11-25 17:51:43 Duration: 44ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.238 parameters: $1 = '617', $2 = 'Forex', $3 = 'Forex', $4 = '617', $5 = 'Forex', $6 = '617', $7 = '617', $8 = 'Forex', $9 = '617'
9 489ms 48 0ms 36ms 10ms WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;Times Reported Time consuming bind #9
Day Hour Count Duration Avg duration 17 48 489ms 10ms [ User: postgres - Total duration: 0ms - Times executed: 48 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 0ms - Times executed: 48 ]
-
WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;
Date: 2025-11-25 17:41:07 Duration: 36ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74 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: 2025-11-25 17:36:09 Duration: 19ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74 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: 2025-11-25 17:32:52 Duration: 19ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74 parameters: $1 = '489', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '', $10 = '0', $11 = '0'
10 306ms 6,294 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 #10
Day Hour Count Duration Avg duration 17 6,294 306ms 0ms [ User: postgres - Total duration: 6s726ms - Times executed: 6294 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 6s726ms - Times executed: 6294 ]
-
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: 2025-11-25 17:20:03 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 16:45:00', $2 = '119.9505', $3 = '119.9505', $4 = '119.795', $5 = '119.911', $6 = '3475', $7 = '605679104088468300', $8 = '0', $9 = '2025-11-25 17:20:03.075', $10 = '2025-11-25 17:20:02.24', $11 = '119.9505', $12 = '119.9505', $13 = '119.795', $14 = '119.911', $15 = '3475', $16 = '0', $17 = '2025-11-25 17:20:03.075', $18 = '2025-11-25 17:20:02.24'
-
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: 2025-11-25 17:56:45 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 17:30:00', $2 = '8594.5', $3 = '8607.5', $4 = '8593.5', $5 = '8595.5', $6 = '446', $7 = '515840248015086300', $8 = '0', $9 = '2025-11-25 17:56:45.461', $10 = '2025-11-25 17:56:45.265', $11 = '8594.5', $12 = '8607.5', $13 = '8593.5', $14 = '8595.5', $15 = '446', $16 = '0', $17 = '2025-11-25 17:56:45.461', $18 = '2025-11-25 17:56:45.265'
-
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: 2025-11-25 17:02:01 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 16:30:00', $2 = '46720.95', $3 = '46784.95', $4 = '46336.45', $5 = '46352.45', $6 = '6297', $7 = '515840248000537300', $8 = '0', $9 = '2025-11-25 17:02:01.976', $10 = '2025-11-25 17:02:01.273', $11 = '46720.95', $12 = '46784.95', $13 = '46336.45', $14 = '46352.45', $15 = '6297', $16 = '0', $17 = '2025-11-25 17:02:01.976', $18 = '2025-11-25 17:02:01.273'
11 300ms 3,633 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 bind #11
Day Hour Count Duration Avg duration 17 3,633 300ms 0ms [ User: postgres - Total duration: 2s601ms - Times executed: 3633 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 2s601ms - Times executed: 3633 ]
-
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: 2025-11-25 17:41:43 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 17:00:00', $2 = '8574.7', $3 = '8598.5', $4 = '8569.7', $5 = '8594.5', $6 = '1280', $7 = '515840248015340300', $8 = '0', $9 = '2025-11-25 17:41:43.593', $10 = '2025-11-25 17:41:43.513', $11 = '8574.7', $12 = '8598.5', $13 = '8569.7', $14 = '8594.5', $15 = '1280', $16 = '0', $17 = '2025-11-25 17:41:43.593', $18 = '2025-11-25 17:41:43.513'
-
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: 2025-11-25 17:00:45 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 16:30:00', $2 = '1.41134', $3 = '1.41182', $4 = '1.41052', $5 = '1.41093', $6 = '8024', $7 = '515840245858789300', $8 = '0', $9 = '2025-11-25 17:00:45.172', $10 = '2025-11-25 17:00:45.158', $11 = '1.41134', $12 = '1.41182', $13 = '1.41052', $14 = '1.41093', $15 = '8024', $16 = '0', $17 = '2025-11-25 17:00:45.172', $18 = '2025-11-25 17:00:45.158'
-
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: 2025-11-25 17:30:59 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 16:00:00', $2 = '26054.7', $3 = '26056.7', $4 = '25926.4', $5 = '25935.4', $6 = '6280', $7 = '515840247933633300', $8 = '0', $9 = '2025-11-25 17:30:59.192', $10 = '2025-11-25 17:30:57.876', $11 = '26054.7', $12 = '26056.7', $13 = '25926.4', $14 = '25935.4', $15 = '6280', $16 = '0', $17 = '2025-11-25 17:30:59.192', $18 = '2025-11-25 17:30:57.876'
12 204ms 2,294 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 bind #12
Day Hour Count Duration Avg duration 17 2,294 204ms 0ms [ User: postgres - Total duration: 1s715ms - Times executed: 2294 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 1s715ms - Times executed: 2294 ]
-
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: 2025-11-25 17:00:49 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 17:00:00', $2 = '0.41173', $3 = '0.413745', $4 = '0.4047075', $5 = '0.408275', $6 = '9588', $7 = '515840249401411300', $8 = '0', $9 = '2025-11-25 17:00:49.426', $10 = '2025-11-25 17:00:49.424', $11 = '0.41173', $12 = '0.413745', $13 = '0.4047075', $14 = '0.408275', $15 = '9588', $16 = '0', $17 = '2025-11-25 17:00:49.426', $18 = '2025-11-25 17:00:49.424'
-
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: 2025-11-25 17:17:40 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 16:00:00', $2 = '8541.81', $3 = '8575.81', $4 = '8540.81', $5 = '8568.81', $6 = '2174', $7 = '515840238059767300', $8 = '0', $9 = '2025-11-25 17:17:40.13', $10 = '2025-11-25 17:17:40.129', $11 = '8541.81', $12 = '8575.81', $13 = '8540.81', $14 = '8568.81', $15 = '2174', $16 = '0', $17 = '2025-11-25 17:17:40.13', $18 = '2025-11-25 17:17:40.129'
-
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: 2025-11-25 17:00:55 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.142 parameters: $1 = '2025-11-25 16:00:00', $2 = '51.635', $3 = '51.675', $4 = '50.695', $5 = '51.09', $6 = '8086', $7 = '515840230623790300', $8 = '0', $9 = '2025-11-25 17:00:55.568', $10 = '2025-11-25 17:00:55.567', $11 = '51.635', $12 = '51.675', $13 = '50.695', $14 = '51.09', $15 = '8086', $16 = '0', $17 = '2025-11-25 17:00:55.568', $18 = '2025-11-25 17:00:55.567'
13 136ms 26,761 0ms 5ms 0ms SET extra_float_digits = 3;Times Reported Time consuming bind #13
Day Hour Count Duration Avg duration 17 26,761 136ms 0ms [ User: postgres - Total duration: 261ms - Times executed: 26761 ]
[ Application: [unknown] - Total duration: 261ms - Times executed: 26761 ]
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:18:14 Duration: 5ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:42:11 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
-
SET extra_float_digits = 3;
Date: 2025-11-25 17:43:40 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
14 128ms 26,735 0ms 7ms 0ms SET application_name = 'PostgreSQL JDBC Driver';Times Reported Time consuming bind #14
Day Hour Count Duration Avg duration 17 26,735 128ms 0ms [ User: postgres - Total duration: 363ms - Times executed: 26735 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 363ms - Times executed: 26735 ]
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:55:45 Duration: 7ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:18:30 Duration: 4ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-11-25 17:23:25 Duration: 2ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15
15 85ms 15 3ms 7ms 5ms SELECT DISTINCT ON (basegroupname, symbol) ;Times Reported Time consuming bind #15
Day Hour Count Duration Avg duration 17 15 85ms 5ms [ User: postgres - Total duration: 3s483ms - Times executed: 15 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 3s483ms - Times executed: 15 ]
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2025-11-25 17:31:56 Duration: 7ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15 parameters: $1 = '689', $2 = '689'
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2025-11-25 17:34:47 Duration: 7ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.15 parameters: $1 = '667', $2 = '667'
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2025-11-25 17:31:12 Duration: 6ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.74 parameters: $1 = '489', $2 = '489'
16 67ms 63 0ms 3ms 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 #16
Day Hour Count Duration Avg duration 17 63 67ms 1ms [ User: postgres - Total duration: 653ms - Times executed: 63 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 653ms - Times executed: 63 ]
-
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: 2025-11-25 17:51:33 Duration: 3ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.201 parameters: $1 = '558', $2 = 'GBPCHF', $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: 2025-11-25 17:31:35 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.201 parameters: $1 = '558', $2 = 'USTEC', $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: 2025-11-25 17:02:56 Duration: 1ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.0.42 parameters: $1 = '538', $2 = 'XAUUSD', $3 = '538'
17 35ms 18 0ms 16ms 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 #17
Day Hour Count Duration Avg duration 17 18 35ms 1ms [ User: postgres - Total duration: 51ms - Times executed: 18 ]
[ Application: [unknown] - Total duration: 51ms - Times executed: 18 ]
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-11-25 17:21:01 Duration: 16ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-11-25 17:11:02 Duration: 6ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.2.126
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-11-25 17:41:06 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
18 32ms 1 32ms 32ms 32ms with maxwhid as ( ;Times Reported Time consuming bind #18
Day Hour Count Duration Avg duration 17 1 32ms 32ms [ User: postgres - Total duration: 115ms - Times executed: 1 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 115ms - Times executed: 1 ]
-
with maxwhid as ( ;
Date: 2025-11-25 17:13:18 Duration: 32ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.4.86 parameters: $1 = '335', $2 = '621', $3 = '637', $4 = '642', $5 = '660', $6 = '666', $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'
19 28ms 36 0ms 0ms 0ms select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;Times Reported Time consuming bind #19
Day Hour Count Duration Avg duration 17 36 28ms 0ms [ User: postgres - Total duration: 51ms - Times executed: 36 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 51ms - Times executed: 36 ]
-
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2025-11-25 17:52:18 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2025-11-25 17:57:19 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2025-11-25 17:36:58 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
20 24ms 36 0ms 0ms 0ms select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;Times Reported Time consuming bind #20
Day Hour Count Duration Avg duration 17 36 24ms 0ms [ User: postgres - Total duration: 144ms - Times executed: 36 ]
[ Application: PostgreSQL JDBC Driver - Total duration: 144ms - Times executed: 36 ]
-
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2025-11-25 17:37:15 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2025-11-25 17:31:57 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2025-11-25 17:57:19 Duration: 0ms Database: postgres User: acaweb_fx Remote: postgres Application: 192.168.1.90
-
Events
Log levels
Key values
- 1,505,356 Log entries
Events distribution
Key values
- 0 PANIC entries
- 0 FATAL entries
- 0 ERROR entries
- 0 WARNING entries
Errors per 5 minutes
NO DATASET
Most Frequent Errors/Events
Key values
- 0 Max number of times the same event was reported
- 0 Total events found
Rank Times reported Error NO DATASET