Raul Ochoa
813a59a36e
Removes function from control flow
2015-09-18 17:16:30 +02:00
Raul Ochoa
23fd33030d
remove console.log
2015-09-18 17:13:37 +02:00
Raul Ochoa
2bdce4baa7
Replaces console.log with global logger
2015-09-18 17:13:22 +02:00
Raul Ochoa
3abdee5e87
use debug for corner case
2015-09-18 16:40:55 +02:00
Raul Ochoa
bc806bba34
remove console.log
2015-09-18 16:39:30 +02:00
Raul Ochoa
208dd209a4
Merge branch 'standalone-server' into standalone-server-express-4
...
Conflicts:
lib/cartodb/controllers/base.js
2015-09-17 12:57:33 +02:00
Raul Ochoa
9139feaa30
Move error message handling test to unit
2015-09-17 12:48:29 +02:00
Raul Ochoa
f9f6c8b700
Use debug instead of console
2015-09-17 12:03:58 +02:00
Raul Ochoa
db8457af60
status + send on syntax error handler
2015-09-17 11:07:02 +02:00
Raul Ochoa
361dd00e9d
Use debug instead of console
2015-09-17 11:06:46 +02:00
Raul Ochoa
d93abe8e7d
Change to delete
2015-09-17 02:05:47 +02:00
Raul Ochoa
a4ba21f9db
Call send with correct params
2015-09-17 02:05:25 +02:00
Raul Ochoa
feabb20748
Send depending on body type
2015-09-17 02:04:30 +02:00
Raul Ochoa
31fe06e3ce
Use listener and remove etag
2015-09-17 02:04:10 +02:00
Raul Ochoa
ef86bacf7f
Set headers with set method
2015-09-17 02:03:09 +02:00
Raul Ochoa
beabe48aec
Upgrade express, adds body-parser
...
- basic changes in server
- basic changes in unit tests
2015-09-17 00:19:00 +02:00
Raul Ochoa
38e422e84c
Moves sendError and sendResponse to Base controller
...
Test for findStatusCode moved to controller
2015-09-16 21:54:56 +02:00
Raul Ochoa
e32ced107e
Fix all ported tests related to req2params
2015-09-16 18:09:39 +02:00
Raul Ochoa
99d78ce9b8
Remove unused variables
2015-09-16 17:02:35 +02:00
Raul Ochoa
352dc6b311
BaseController to encapsulate req2params method
...
All controllers now extending BaseController
- Most of the acceptance ported tests will be broken
2015-09-16 16:18:26 +02:00
Raul Ochoa
66f94d9452
Fix test
2015-09-16 02:49:18 +02:00
Raul Ochoa
62f428f434
Remove app dependency
2015-09-16 01:48:54 +02:00
Raul Ochoa
713ad03c3b
No need to expose findStatusCode at app level
2015-09-16 01:44:30 +02:00
Raul Ochoa
ad2ebc11dd
Remove unused require
2015-09-16 01:39:15 +02:00
Raul Ochoa
72a0c4a487
New sendResponse and sendError methods
...
- fixes response for static named map error cases
2015-09-16 01:36:51 +02:00
Raul Ochoa
fba5a35514
Move sendResponse and sendError to response object
2015-09-15 19:28:02 +02:00
Raul Ochoa
e2e5e40ea9
Fix maxcomplexity
2015-09-15 19:01:34 +02:00
Raul Ochoa
f5660667c8
Move req.profiler call to req2params itself
2015-09-15 18:16:50 +02:00
Raul Ochoa
64e225c4aa
Merge branch 'master' into standalone-server
2015-09-15 11:48:33 +02:00
Raul Ochoa
126491fc93
Remove unused xml file that was used in health check
2015-09-15 11:46:19 +02:00
Raul Ochoa
ea872d96f8
Listen to renderer cache events and log stats
2015-09-14 19:24:24 +02:00
Raul Ochoa
2d3088ba27
Port everything related to stats from windshaft
2015-09-14 18:47:01 +02:00
Raul Ochoa
469b602484
Attributes backend using mapconfig provider to access attributes
2015-09-14 18:46:22 +02:00
Raul Ochoa
67afd8738b
Remove renderer cache param from attributes backend
2015-09-10 00:47:32 +02:00
Raul Ochoa
f96c80d7a1
Merge branch 'master' into standalone-server
...
Conflicts:
lib/cartodb/cartodb_windshaft.js
2015-09-08 15:42:30 +02:00
Raul Ochoa
7ae034d746
Remove no longer needed health check params
2015-09-07 18:40:20 +02:00
Raul Ochoa
e0a7eb01cc
Use torque renderer config
...
Adds some notes about db pool params in torque
2015-09-04 16:33:40 +02:00
Raul Ochoa
3af2136770
Merge branch 'master' into standalone-server
...
Conflicts:
lib/cartodb/cartodb_windshaft.js
lib/cartodb/monitoring/health_check.js
2015-09-04 13:21:54 +02:00
Raul Ochoa
d6102284a4
Do not return results from health check
...
It also removed old dependencies and takes disabled file path in ctor.
2015-08-28 17:41:40 +02:00
Raul Ochoa
943509864d
Improve uniqueness of named map map config provider
2015-07-31 12:24:34 +02:00
Raul Ochoa
2ac228359f
Fallback to image/png header
2015-07-31 12:23:36 +02:00
Raul Ochoa
909f8da2ff
Adds lru cache for layergroups and named maps mapconfig provider
2015-07-15 16:51:26 +02:00
Raul Ochoa
5a5832394a
Remove console.log
2015-07-15 16:10:59 +02:00
Raul Ochoa
9c6c63c167
More strict jshint
2015-07-15 15:03:28 +02:00
Raul Ochoa
bbec3ae7da
Subscribes to named map changes to invalidate cache
2015-07-14 21:18:10 +02:00
Raul Ochoa
1f7daab677
Caching named map providers by template name and config/auth token
...
Named Map provider cache buster changes on creation
2015-07-14 21:17:58 +02:00
Raul Ochoa
91ab64dda9
Fix cached result in getAffectedTablesAndLastUpdatedTime
2015-07-14 21:00:27 +02:00
Raul Ochoa
722705468f
Not adding surrogate keys for empty affected tables
2015-07-14 20:53:26 +02:00
Raul Ochoa
07c920bad5
Use named map provider cache to retrieve providers
2015-07-14 20:53:06 +02:00
Raul Ochoa
6d3ef11a7c
Fix cache usage in layergroup affected tables
2015-07-14 20:11:49 +02:00
Raul Ochoa
4aabe9d946
Named maps controller adding cache headers
...
This requires a cache for affected tables as it is hitting db for
every request right now
2015-07-14 20:10:55 +02:00
Raul Ochoa
7247b20686
Unify sendResponse in named maps controller
2015-07-14 17:34:05 +02:00
Raul Ochoa
8e8f618a22
assert instead of ifs
2015-07-14 17:33:42 +02:00
Raul Ochoa
d426702213
Merge branch 'master' into standalone-server
2015-07-14 16:24:39 +02:00
Raul Ochoa
c97610ad59
style
2015-07-14 14:30:37 +02:00
Raul Ochoa
e8b5845174
Shared cache for affected tables in layergroup and map controllers
2015-07-14 13:40:41 +02:00
Raul Ochoa
c295584864
Cache channel now in layergroup controller
...
Internal cache channel dbname+layergroupid cache must be unified in layergroup
and map controllers
Removes sendWithHeaders
2015-07-14 11:55:49 +02:00
Raul Ochoa
36257f73b9
Better format
2015-07-13 17:18:50 +02:00
Raul Ochoa
5e2a20fbe0
Tags layergroup instantiation with surrogate keys per affected tables
2015-07-13 16:15:34 +02:00
Raul Ochoa
76823f7529
No need to pass a reference to itself
2015-07-13 15:06:22 +02:00
Raul Ochoa
96a6a0d980
Using MapStore, no need to attach it to app
2015-07-13 15:05:45 +02:00
Raul Ochoa
b05701be61
Authentication/Authorization moves to its own entity
2015-07-13 15:05:03 +02:00
Raul Ochoa
316f08df08
named maps tiles sending tile headers
2015-07-13 11:53:23 +02:00
Raul Ochoa
f9554ec761
Re-enable render limits
2015-07-10 19:10:55 +02:00
Raul Ochoa
e128b1d750
remove unused method
2015-07-10 12:33:01 +02:00
Raul Ochoa
e45efbcfb0
New map config provider to allow injecting limits in context
2015-07-10 12:31:56 +02:00
Raul Ochoa
847ab96a48
RendererFactory changes for new signature
2015-07-10 12:30:52 +02:00
Raul Ochoa
1e52f790ad
One pass for prepare request and response objects
2015-07-10 11:25:20 +02:00
Raul Ochoa
9bece712a9
Splits controllers and supports after layergroup creation actions
2015-07-10 11:24:32 +02:00
Raul Ochoa
6e0678e084
better style
2015-07-10 01:31:06 +02:00
Raul Ochoa
579cabdc1a
Initial refactor of layergroup creation
2015-07-10 01:30:38 +02:00
Raul Ochoa
9f252dfac4
Improve named map config format for cache key
2015-07-09 19:49:11 +02:00
Raul Ochoa
5aad624346
NamedMaps controller using NamedMapMapConfigProvider
...
PreviewBackend with format param
2015-07-09 18:47:21 +02:00
Raul Ochoa
23d1109910
Adds named maps mapconfig provider
...
starts using it in named map instantiation
2015-07-09 14:39:25 +02:00
Raul Ochoa
ae2a72a810
Fix named maps controller using MapStoreMapConfig
2015-07-09 13:37:00 +02:00
Raul Ochoa
123346ebdb
Refactor controllers to use map store map config provider
2015-07-08 20:51:36 +02:00
Raul Ochoa
c8568b175b
Move server info to its own controller
2015-07-08 16:08:38 +02:00
Raul Ochoa
1737cbe1a5
Unifies named map instantiation so it's easy to work on it
2015-07-08 15:50:59 +02:00
Raul Ochoa
c81048312d
Context with user
2015-07-08 15:34:46 +02:00
Raul Ochoa
fa84813a37
Manage cors with a middleware
2015-07-08 13:27:56 +02:00
Raul Ochoa
8cd3807100
Split named maps administration from instantiation/usage
2015-07-08 13:11:57 +02:00
Raul Ochoa
2234a763cb
Uses model through model namespace
2015-07-07 23:52:39 +02:00
Raul Ochoa
d52b65470e
Ports acceptance tests from windshaft
2015-07-07 23:46:58 +02:00
Raul Ochoa
b63e697934
Handle no layers case
2015-07-07 23:45:56 +02:00
Raul Ochoa
8a036c79c7
Merge branch 'master' into standalone-server
...
Conflicts:
app.js
2015-07-07 12:36:39 +02:00
Raul Ochoa
e49881d1ed
Improve authorizedBySigner
2015-07-06 03:23:51 +02:00
Raul Ochoa
aa266f9b61
Improve authorizedByAPIKey
2015-07-06 03:19:56 +02:00
Raul Ochoa
ccd3d0a3bf
Merge branch 'named-maps-tiles' into standalone-server
...
Conflicts:
app.js
2015-07-06 02:55:13 +02:00
Raul Ochoa
8e4e458a2a
fix jshint
2015-07-06 02:08:56 +02:00
Raul Ochoa
7fc403425d
metadata backend
2015-07-04 23:44:39 +02:00
Raul Ochoa
ef171bf2af
reverts map store changes
2015-07-04 23:38:15 +02:00
Raul Ochoa
b74a6624e3
remove redundant code
2015-07-04 23:32:26 +02:00
Raul Ochoa
19bf1fe56b
note about token format
2015-07-04 23:32:19 +02:00
Raul Ochoa
ea6bb8dca3
fix jsdoc
2015-07-04 23:20:12 +02:00
Raul Ochoa
9d6d3f96b2
Unify mapstore
2015-07-04 23:18:09 +02:00
Raul Ochoa
5967c5d1d5
Reorg app.js
2015-07-04 23:09:00 +02:00
Raul Ochoa
a6017c6ade
Reorg requires
2015-07-04 21:33:31 +02:00
Raul Ochoa
2d3f2667ca
Standalone server initial implementation
...
- no dependency over Windshaft.Server
2015-07-04 20:41:22 +02:00
Raul Ochoa
ed90cadd75
fix jshint
2015-07-02 16:35:13 +02:00
Raul Ochoa
034f3c77ce
modifies controllers to use new mapbackend signatures
2015-07-02 02:02:22 +02:00
Raul Ochoa
5a003a7cbe
Initial/dummy implementation for named maps tiles
...
Issues:
- creates a layergroup per tile:
- trigges a mapview
- extracts each time affected tables and last update
- duplicates a lot of code from NamedStaticMapsController
- keeps relying on fake request concept
2015-06-30 15:41:57 +02:00
Raul Ochoa
d13d107aea
Adds names to functions
2015-06-29 19:18:52 +02:00
Raul Ochoa
4f87796e9c
Uses backend-foundations branch to use createLayergroup from backend
2015-06-29 18:58:58 +02:00
Raul Ochoa
098ed6b203
New endpoint for named maps tiles
2015-06-29 16:39:35 +02:00
Raul Ochoa
c6f9152efe
Moves template maps to backends directory
2015-06-29 16:38:13 +02:00
Rafa de la Torre
90d0b23441
Use CDB_QueryTablesText instead of CDB_QueryTables
...
This avoids trouble with len(schema.table_name) > 63
See https://github.com/CartoDB/cartodb-postgresql/issues/86
2015-06-24 15:43:04 +02:00
Raul Ochoa
eaccd062d3
Adds layergroupid header
...
Closes #311
2015-06-18 01:13:33 +02:00
Raul Ochoa
68c70effec
Named maps returning errors=>Array
instead of error=>String
2015-06-05 13:38:38 -04:00
Raul Ochoa
6685b759b2
Remove duplicated module.exports
2015-06-04 20:14:36 -04:00
Raul Ochoa
9613f76ef5
Keep placeholder key validation independent from name validation
2015-06-04 11:58:24 -04:00
Raul Ochoa
3f0d344313
Changes rules for names in templates
...
Now valid names can start with numbers and can contain dashes (-).
Closes #306
2015-06-04 10:41:40 -04:00
Raul Ochoa
513fa2af01
Log all named map invalidation with context
2015-04-28 17:25:07 +02:00
Raul Ochoa
7580081a64
Append stats to profiler
2015-04-28 16:14:30 +02:00
Raul Ochoa
1a66f96379
Adds custom cache control header for named map static images
2015-04-28 16:14:19 +02:00
Raul Ochoa
fde680450f
Do not use headers from abaculus in combination with sendWithHeaders
2015-04-28 16:14:03 +02:00
Raul Ochoa
6843692f01
Pick format from user params
2015-04-28 16:10:50 +02:00
Raul Ochoa
1f3a073f21
Use headers from fake request
2015-04-28 16:10:30 +02:00
Raul Ochoa
9edec8ef3f
Adds Fastly cache backend
2015-04-27 16:31:47 +02:00
Raul Ochoa
c06cba81f4
SurrogateKeysCache now accepts several cache backends
...
- uses queue-async to parallelize the call to invalidate
2015-04-27 16:22:37 +02:00
Raul Ochoa
ad5514dd02
Pick fastly config for server options
2015-04-27 16:20:55 +02:00
Raul Ochoa
a5b9ca706c
Adds new fastly cache backend
2015-04-27 16:18:50 +02:00
Raul Ochoa
5ee19cc2ed
Rename template maps controller to named maps to be more clear
2015-04-27 15:01:49 +02:00
Raul Ochoa
8c3f9c7ba0
Inject server options to use setDBParams
2015-04-27 14:59:41 +02:00
Raul Ochoa
b95a001e0b
New static maps controller/endpoint for named maps
...
- loads a template
- creates a layergroup on the fly
- checks for view center+zoom or bounds
- if not found it tries to estimate them
- if fails it falls to default bounds value
- returns an static image tagged with a surrogate key
2015-04-27 14:56:38 +02:00
Raul Ochoa
d180305e8b
Exposes pgQueryRunner in server options
2015-04-27 14:54:14 +02:00
Raul Ochoa
ef8fcf7e93
Do not inject NamedMapsCacheEntry as template controller knows about them
...
Also do not inject pgConnection
2015-04-27 14:52:36 +02:00
Raul Ochoa
e7bd5dd644
Moves setDBParams to serverOptions so it can be reused
2015-04-27 14:47:58 +02:00
Raul Ochoa
8503a5c7c9
Tables extent API: returns estimated bounds for a list of tables
2015-04-27 12:55:20 +02:00
Raul Ochoa
2de0e5d52b
Extracts psql query run to its own class to be reusable
2015-04-27 12:48:34 +02:00
Raul Ochoa
8fb3dc7529
Move templateName function to template maps model
2015-04-27 11:55:05 +02:00
Raul Ochoa
446c432484
dry content type validation
2015-04-23 12:05:52 +02:00
Raul Ochoa
c49f3aaba5
DRY ifUnauthenticated method
2015-04-23 12:01:53 +02:00
Raul Ochoa
fed29b3b50
Extract finish function
2015-04-23 11:47:01 +02:00
Raul Ochoa
e7d134d70c
No more {username}@{template_name} template id
...
It's still backwards compatible
2015-04-23 11:29:55 +02:00
Raul Ochoa
026a0750e3
Call callback on invalid map store token for named maps
...
fixes #267
2015-04-21 18:59:52 +02:00
Raul Ochoa
0c578a193c
Remove stack for debug environment option
2015-04-14 16:44:03 +02:00
Raul Ochoa
84f579f0ec
Do not add x-profiler header as it's already added by sendResponse
2015-04-14 16:41:04 +02:00
Raul Ochoa
1bf2809355
Do not check statsd_client in profiler
2015-04-14 16:40:15 +02:00
Raul Ochoa
e91bc91057
Adds test suite for x-cache-channel
2015-04-10 13:39:20 +02:00
Raul Ochoa
2d84d38b90
Do not add x-cache-channel header for GET template routes
2015-04-10 10:55:46 +02:00
Raul Ochoa
98bc95bc58
Add user from params to fakereq object so it's propagated
...
fixes #280
2015-04-08 11:11:48 +02:00
Raul Ochoa
ab9ae60958
Merge branch 'master' into render-limits
2015-04-07 14:18:34 +02:00
Raul Ochoa
2eb7529efb
Pick cacheOnTimeout and render limit from mapnik config
...
- adds default mapnik configuration values
- removes old top-level mapnik config, rely on renderer one
2015-04-07 12:52:33 +02:00
Luis Bosque
7934d659fb
Removed more unused code from healthcheck
2015-04-06 20:49:29 +02:00
Luis Bosque
21b5ed9c8a
Fixed healthcheck for jshint
2015-04-06 20:35:22 +02:00
Luis Bosque
da70839f78
Disable per-user healthchecks
2015-04-06 20:15:26 +02:00
Raul Ochoa
2e1f08d764
Adds a feature flag to cache timed out tile requests: cacheOnTimeout
2015-04-06 18:52:54 +02:00
Raul Ochoa
e3c6569302
Adds an onTileErrorStrategy that intercepts error timeout
...
- returns an fallback image without error
2015-04-06 18:43:40 +02:00
Raul Ochoa
38e4812b43
Restore previous beforeLayergroupCreate hook behaviour
...
Adds new rendercache's beforeRendererCreate hook
2015-04-01 19:35:55 +02:00
Raul Ochoa
a9ab9f8b5c
Pick render limit and add it to request context
...
- Extends the problematic fake request in templates
- Picks the value in waterfall, this must be improved because:
1. It does not make sense if there is no layers with limits
2. If we want to include it always without considering the layer type
we can do the operation in parallel
2015-04-01 15:11:58 +02:00