@golemio/pid 2.3.3-dev.685741706 → 2.3.3-dev.685860908

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,7 @@
1
- DROP procedure vehiclepositions_data_retention(int);
1
+ DROP procedure vehiclepositions_data_retention(int, int);
2
2
 
3
3
  DROP TABLE vehiclepositions_positions_history;
4
4
 
5
5
  DROP TABLE vehiclepositions_trips_history;
6
+
7
+ CREATE INDEX IF NOT EXISTS vehiclepositions_positions_origin_time ON vehiclepositions_positions USING btree (origin_time);
@@ -37,7 +37,7 @@ CREATE TABLE vehiclepositions_trips_history (
37
37
  );
38
38
  CREATE INDEX vehiclepositions_trips_history_gtfs_trip_id ON vehiclepositions_trips_history USING btree (gtfs_trip_id);
39
39
  CREATE INDEX vehiclepositions_trips_history_idx0 ON vehiclepositions_trips_history USING hash (last_position_id);
40
-
40
+ CREATE INDEX vehiclepositions_trips_history_start_timestamp_idx ON vehiclepositions_trips_history USING btree (start_timestamp);
41
41
 
42
42
  -- pid.vehiclepositions_positions definition
43
43
 
@@ -85,14 +85,9 @@ CREATE TABLE vehiclepositions_positions_history (
85
85
  valid_to int8 NULL,
86
86
  CONSTRAINT vehiclepositions_positions_history_pkey PRIMARY KEY (id)
87
87
  );
88
- CREATE INDEX vehiclepositions_positions_history_created_at ON vehiclepositions_positions_history USING btree (created_at);
89
- CREATE INDEX vehiclepositions_positions_history_idx0 ON vehiclepositions_positions_history USING btree (id, valid_to, state_position) INCLUDE (delay);
90
- CREATE INDEX vehiclepositions_positions_history_origin_time ON vehiclepositions_positions_history USING btree (origin_time);
91
88
  CREATE INDEX vehiclepositions_positions_history_trips_id ON vehiclepositions_positions_history USING btree (trips_id);
92
- CREATE INDEX vehiclepositions_positions_history_updated_at ON vehiclepositions_positions_history USING btree (updated_at DESC);
93
- CREATE INDEX vehiclepositions_positions_history_valid_to ON vehiclepositions_positions_history USING btree (valid_to);
94
89
 
95
- CREATE or replace PROCEDURE vehiclepositions_data_retention(inout numberOfRows int)
90
+ CREATE or replace PROCEDURE vehiclepositions_data_retention(inout numberOfRows int, in dataRetentionMinutes int)
96
91
  LANGUAGE plpgsql
97
92
  AS $procedure$
98
93
  declare
@@ -102,8 +97,8 @@ AS $procedure$
102
97
  left join pid.vehiclepositions_positions p on
103
98
  p.id = t.last_position_id
104
99
  where
105
- p.valid_to/1000 < extract(epoch from (NOW() - '15 minutes'::interval))
106
- or (gtfs_trip_id is null and p.created_at < NOW() - '15 minutes'::interval) -- entries with valid to is null
100
+ p.valid_to/1000 < extract(epoch from (NOW() - (dataRetentionMinutes || ' minutes')::interval))
101
+ or (gtfs_trip_id is null and p.created_at < NOW() - (dataRetentionMinutes || ' minutes')::interval) -- entries with valid to is null
107
102
  into idsForDelete;
108
103
 
109
104
  INSERT INTO pid.vehiclepositions_trips_history
@@ -120,3 +115,5 @@ AS $procedure$
120
115
  select array_length(idsForDelete,1) into numberOfRows;
121
116
  end;
122
117
  $procedure$;
118
+
119
+ DROP INDEX vehiclepositions_positions_origin_time;
package/dist/const.d.ts CHANGED
@@ -28,3 +28,4 @@ export declare enum PositionTrackingEnum {
28
28
  TRACKING = 2
29
29
  }
30
30
  export declare const ArrayNotPublicRegistrationNumbers: string[];
31
+ export declare const DATA_RETENTION_IN_MINUTES = 30;
package/dist/const.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ArrayNotPublicRegistrationNumbers = exports.PositionTrackingEnum = exports.TCPEventEnum = exports.StateProcessEnum = exports.StatePositionEnum = void 0;
3
+ exports.DATA_RETENTION_IN_MINUTES = exports.ArrayNotPublicRegistrationNumbers = exports.PositionTrackingEnum = exports.TCPEventEnum = exports.StateProcessEnum = exports.StatePositionEnum = void 0;
4
4
  var StatePositionEnum;
5
5
  (function (StatePositionEnum) {
6
6
  StatePositionEnum["OFF_TRACK"] = "off_track";
@@ -35,4 +35,5 @@ var PositionTrackingEnum;
35
35
  PositionTrackingEnum[PositionTrackingEnum["TRACKING"] = 2] = "TRACKING";
36
36
  })(PositionTrackingEnum = exports.PositionTrackingEnum || (exports.PositionTrackingEnum = {}));
37
37
  exports.ArrayNotPublicRegistrationNumbers = ["2210", "5572"];
38
+ exports.DATA_RETENTION_IN_MINUTES = 30;
38
39
  //# sourceMappingURL=const.js.map
package/dist/const.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAYX;AAZD,WAAY,iBAAiB;IACzB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;IACrB,kDAA6B,CAAA;IAC7B,gDAA2B,CAAA;IAC3B,0CAAqB,CAAA;IACrB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,kEAA6C,CAAA;IAC7C,4CAAuB,CAAA;IACvB,8CAAyB,CAAA;AAC7B,CAAC,EAZW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAY5B;AAED,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,2CAAuB,CAAA;IACvB,2CAAuB,CAAA;IACvB,mCAAe,CAAA;IACf,2CAAuB,CAAA;AAC3B,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B;AAED,IAAY,YAKX;AALD,WAAY,YAAY;IACpB,uCAAuB,CAAA;IACvB,gCAAgB,CAAA;IAChB,uBAAO,CAAA;IACP,uBAAO,CAAA;AACX,CAAC,EALW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAKvB;AAED,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC5B,+EAAgB,CAAA;IAChB,uEAAY,CAAA;AAChB,CAAC,EAHW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAG/B;AAEY,QAAA,iCAAiC,GAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAYX;AAZD,WAAY,iBAAiB;IACzB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;IACrB,kDAA6B,CAAA;IAC7B,gDAA2B,CAAA;IAC3B,0CAAqB,CAAA;IACrB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,kEAA6C,CAAA;IAC7C,4CAAuB,CAAA;IACvB,8CAAyB,CAAA;AAC7B,CAAC,EAZW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAY5B;AAED,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,2CAAuB,CAAA;IACvB,2CAAuB,CAAA;IACvB,mCAAe,CAAA;IACf,2CAAuB,CAAA;AAC3B,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B;AAED,IAAY,YAKX;AALD,WAAY,YAAY;IACpB,uCAAuB,CAAA;IACvB,gCAAgB,CAAA;IAChB,uBAAO,CAAA;IACP,uBAAO,CAAA;AACX,CAAC,EALW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAKvB;AAED,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC5B,+EAAgB,CAAA;IAChB,uEAAY,CAAA;AAChB,CAAC,EAHW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAG/B;AAEY,QAAA,iCAAiC,GAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE/D,QAAA,yBAAyB,GAAG,EAAE,CAAC"}
@@ -15,6 +15,7 @@ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
15
15
  const workers_1 = require("@golemio/core/dist/integration-engine/workers");
16
16
  const redis_semaphore_1 = require("@golemio/core/dist/shared/redis-semaphore");
17
17
  const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
18
+ const const_1 = require("../../../../const");
18
19
  class DataRetentionTask extends workers_1.AbstractEmptyTask {
19
20
  constructor(queuePrefix) {
20
21
  super(queuePrefix);
@@ -35,7 +36,7 @@ class DataRetentionTask extends workers_1.AbstractEmptyTask {
35
36
  }
36
37
  try {
37
38
  const sequelize = integration_engine_1.PostgresConnector.getConnection();
38
- const result = yield sequelize.query(`CALL ${vehicle_positions_1.VehiclePositions.pgSchema}.vehiclepositions_data_retention(0);`, {
39
+ const result = yield sequelize.query(`CALL ${vehicle_positions_1.VehiclePositions.pgSchema}.vehiclepositions_data_retention(0,${const_1.DATA_RETENTION_IN_MINUTES});`, {
39
40
  plain: true,
40
41
  type: sequelize_1.QueryTypes.SELECT,
41
42
  });
@@ -80,8 +81,6 @@ class DataRetentionTask extends workers_1.AbstractEmptyTask {
80
81
  }
81
82
  getMaintenanceCommands() {
82
83
  return [
83
- `VACUUM ANALYZE ${vehicle_positions_1.VehiclePositions.pgSchema}.vehiclepositions_trips;`,
84
- `VACUUM ANALYZE ${vehicle_positions_1.VehiclePositions.pgSchema}.vehiclepositions_positions;`,
85
84
  `REINDEX TABLE CONCURRENTLY ${vehicle_positions_1.VehiclePositions.pgSchema}.vehiclepositions_trips;`,
86
85
  `REINDEX TABLE CONCURRENTLY ${vehicle_positions_1.VehiclePositions.pgSchema}.vehiclepositions_positions;`,
87
86
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"DataRetentionTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/vehicle-positions/workers/tasks/DataRetentionTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataRetentionTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/vehicle-positions/workers/tasks/DataRetentionTask.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@
7
7
  * Handles web logic (http request, response). Sets response headers, handles error responses.
8
8
  */
9
9
  /// <reference types="express" />
10
- import { NextFunction, Request, Response, Router } from "@golemio/core/dist/shared/express";
11
- import { BaseRouter } from "@golemio/core/dist/output-gateway/routes/BaseRouter";
12
10
  import { PIDDepartureBoardsModel } from "../pid";
11
+ import { BaseRouter } from "@golemio/core/dist/output-gateway/routes/BaseRouter";
12
+ import { NextFunction, Request, Response, Router } from "@golemio/core/dist/shared/express";
13
13
  /**
14
14
  * @deprecated use /pid/departureboards instead
15
15
  */
@@ -21,14 +21,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
23
  exports.departureBoardsRouter = exports.DepartureBoardsRouter = void 0;
24
- const express_1 = require("@golemio/core/dist/shared/express");
25
- const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
24
+ const pid_1 = require("../pid");
25
+ const shared_1 = require("../shared");
26
26
  const redis_1 = require("@golemio/core/dist/output-gateway/redis");
27
27
  const BaseRouter_1 = require("@golemio/core/dist/output-gateway/routes/BaseRouter");
28
28
  const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
29
- const shared_1 = require("../shared");
30
- const pid_1 = require("../pid");
29
+ const express_1 = require("@golemio/core/dist/shared/express");
30
+ const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
31
31
  const moment_timezone_1 = __importDefault(require("@golemio/core/dist/shared/moment-timezone"));
32
+ const const_1 = require("../../const");
32
33
  /**
33
34
  * @deprecated use /pid/departureboards instead
34
35
  */
@@ -136,7 +137,9 @@ class DepartureBoardsRouter extends BaseRouter_1.BaseRouter {
136
137
  (0, express_validator_1.query)("aswIds.*").optional().isString(),
137
138
  (0, express_validator_1.query)("cisIds.*").optional().isInt(),
138
139
  (0, express_validator_1.query)("names.*").optional().isString(),
139
- (0, express_validator_1.query)("minutesBefore").optional().isInt(),
140
+ (0, express_validator_1.query)("minutesBefore")
141
+ .optional()
142
+ .isInt(process.env.NODE_ENV === "test" ? {} : { lt: const_1.DATA_RETENTION_IN_MINUTES + 1 }),
140
143
  (0, express_validator_1.query)("minutesAfter").optional().isInt(),
141
144
  (0, express_validator_1.query)("orderBySchedule").optional().isBoolean(),
142
145
  (0, express_validator_1.query)("preferredTimezone").optional().isString(),
@@ -1 +1 @@
1
- {"version":3,"file":"DepartureBoardsRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/departure-boards/DepartureBoardsRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DepartureBoardsRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/departure-boards/DepartureBoardsRouter.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@
3
3
  * Handles web logic (http request, response). Sets response headers, handles error responses.
4
4
  */
5
5
  /// <reference types="express" />
6
- import { Router } from "@golemio/core/dist/shared/express";
7
6
  import { BaseRouter } from "@golemio/core/dist/output-gateway/routes/BaseRouter";
7
+ import { Router } from "@golemio/core/dist/shared/express";
8
8
  export declare class PIDRouter extends BaseRouter {
9
9
  readonly router: import("express-serve-static-core").Router;
10
10
  private readonly departureBoardsController;
@@ -5,14 +5,15 @@
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.pidRouter = exports.PIDRouter = void 0;
8
- const express_1 = require("@golemio/core/dist/shared/express");
9
- const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
8
+ const redis_1 = require("@golemio/core/dist/output-gateway/redis");
10
9
  const BaseRouter_1 = require("@golemio/core/dist/output-gateway/routes/BaseRouter");
11
10
  const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
12
- const redis_1 = require("@golemio/core/dist/output-gateway/redis");
13
- const middleware_1 = require("./middleware");
11
+ const express_1 = require("@golemio/core/dist/shared/express");
12
+ const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
13
+ const const_1 = require("../../const");
14
14
  const constants_1 = require("./constants");
15
15
  const controllers_1 = require("./controllers");
16
+ const middleware_1 = require("./middleware");
16
17
  class PIDRouter extends BaseRouter_1.BaseRouter {
17
18
  constructor() {
18
19
  super();
@@ -30,7 +31,9 @@ class PIDRouter extends BaseRouter_1.BaseRouter {
30
31
  (0, express_validator_1.query)("names").exists().isArray(),
31
32
  (0, express_validator_1.query)("names").exists().isString(),
32
33
  ]),
33
- (0, express_validator_1.query)("minutesBefore").optional().isInt(),
34
+ (0, express_validator_1.query)("minutesBefore")
35
+ .optional()
36
+ .isInt(process.env.NODE_ENV === "test" ? {} : { lt: const_1.DATA_RETENTION_IN_MINUTES + 1 }),
34
37
  (0, express_validator_1.query)("minutesAfter").optional().isInt(),
35
38
  (0, express_validator_1.query)("preferredTimezone").optional().isString().isIn(prefferedTimezone),
36
39
  (0, express_validator_1.query)("mode").optional().isIn(departureMode),
@@ -1 +1 @@
1
- {"version":3,"file":"PIDRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/pid/PIDRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PIDRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/pid/PIDRouter.ts"],"names":[],"mappings":"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"}
@@ -744,7 +744,7 @@ paths:
744
744
  example: "Smíchovské"
745
745
  - name: minutesBefore
746
746
  in: query
747
- description: Set the start of interval from which to retrieve departures. Positive numbers are set in past relative to the time of request or `timeFrom` timestamp, negative numbers set the start in the future. Use to compensate for walking distance to a stop. Default is set to 0.
747
+ description: Set the start of interval from which to retrieve departures. Positive numbers are set in past relative to the time of request or `timeFrom` timestamp, negative numbers set the start in the future. Use to compensate for walking distance to a stop. Default is set to 0. Maximum value is 30 because of implemented data retention.
748
748
  required: false
749
749
  schema:
750
750
  type: number
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/pid",
3
- "version": "2.3.3-dev.685741706",
3
+ "version": "2.3.3-dev.685860908",
4
4
  "description": "Golemio PID Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",