steve-chavez
38f3bcf4a6
Reduce memory usage by avoiding Aeson encode
...
It was detected that Aeson encoding had high memory usage when
the json payload was large, around x60 the payload size.
With this change we get around x10 payload size memory usage.
The encodeUtf8(when doing a Text -> ByteString with `toS`) function
on a large payload also contributed to the high memory usage.
Main idea to reduce the memory usage was to let the ByteString coming
from the request body go to the database unchanged.
2018-01-10 11:43:16 -05:00
steve-chavez
f159233de8
Change UPDATE query to a parametrized query
2018-01-10 11:43:16 -05:00
steve-chavez
02a286a4b1
Change callProc query to a parametrized query
2018-01-10 11:43:16 -05:00
Ruslan Talpa and GitHub
effbec234f
Faster queries using json_agg
2017-12-12 15:44:50 +02:00
steve-chavez
fef7d949d9
Fix #411 , remove the need for pk in &select for parent embed
2017-11-30 12:56:18 -05:00
steve-chavez
be630aa680
Change phrase/plain full text search syntax
2017-11-27 11:38:54 -05:00
steve-chavez
188f947437
Maintain backward compatibility on GUC headers feature
...
If pg version >= 9.6 is detected the feature is enabled,
also all of the 9.6 dependent tests are moved to their own spec.
2017-10-18 17:41:55 -05:00
steve-chavez
b9a591aecb
Add ability to map GUC to http response headers
2017-10-18 17:41:55 -05:00
steve-chavez
d1a8c3a6f8
Fix #974 RPC error when function has single OUT param
2017-10-09 10:45:17 -05:00
steve-chavez
e1cab584a3
Add test for #996 embed bug when table name = column name
2017-10-09 10:45:17 -05:00
grotsev and Joe Nelson
8f49f731d0
Fix embedded column conflicts table name ( #996 )
2017-10-05 21:03:27 -05:00
Steve Chávez and Joe Nelson
cf19ad0369
Allow GET on RPC ( #946 )
2017-09-17 11:16:46 -05:00
steve-chavez
6c2f179b48
Remove isnot and notin operators and refactor
2017-09-08 19:56:00 -05:00
steve-chavez
dff4d766a8
Allow dictionary and plain/phrase in fts
2017-09-08 19:56:00 -05:00
Russell Davies and Joe Nelson
59a320fd44
Add support for range operators ( #938 )
2017-08-20 09:45:27 -05:00
Felix Yan and Joe Nelson
69070b64f9
Fix compatibility with protolude-0.2 ( #939 )
...
This allows the Arch Linux PostgREST package to build cleanly
2017-08-14 01:36:33 -05:00
Joe Nelson and GitHub
d89937a6f3
Upgrade to fast new hasql ( #836 )
2017-08-10 01:54:15 -05:00
Ruslan Talpa and GitHub
b03e3fbec7
Ability to embed using a specific relation when there are multiple between tables, fixes #907 ( #918 )
...
* Ability to embed using a specific relation when there are multiple between tables, fixes #907
* fix lint errors
* fix code comments
* add type comments
2017-07-25 19:01:35 +03:00
Steve Chávez and Joe Nelson
968bf9ce59
Put traditional Filters inside [LogicTree] ( #911 )
2017-07-19 18:01:37 -05:00
steve-chavez
f0bd507ab9
Add binary output to rpc, Fix #883
2017-06-24 22:45:53 -05:00
steve-chavez
ecd58e1ad2
Refactor rpc to not use count when returning scalar
2017-06-24 21:07:07 -05:00
Steve Chávez and Joe Nelson
b007428142
Allow more than two conditions in a single and/or, Fix #889 ( #892 )
2017-06-21 00:52:21 -05:00
Joe Nelson and GitHub
50de0536de
Allow csv formatting in rpc output ( #882 )
2017-05-27 00:07:23 -05:00
SteveBash and Joe Nelson
b8eb2cd9c1
Add and/or params for complex boolean logic
...
* Add support for and/or params in GET, POST, PATCH and DELETE
* Restrict usage of IN in and/or to be inside parens e.g. in.(1,2,3)
* Allow quoting operators for values that have ',)' chars
inside and/or e.g. eq."(entity,1)"
2017-05-13 16:49:25 -05:00
SteveBash and Joe Nelson
59abecaf5b
Add missing tests for NOT IN accepting empty values and refactor
...
Go back to operators map since the previously defined
Operator constructors added innecesary complexity also
rename Path to EmbedPath
2017-05-13 16:49:25 -05:00
Steve Chávez and Joe Nelson
0a9d9cdded
Fix #701 : allow quoted values for IN operator, refactor and Fix #641 : allow IN filter to have no values ( #854 )
2017-04-11 00:57:44 -05:00
Ruslan Talpa and Joe Nelson
5fffbbe381
Make HTTP headers available as GUCs #800 ( #849 )
2017-04-10 19:23:48 -05:00
Steve Chávez and Joe Nelson
98438c437f
Proposal for binary output ( #802 )
2017-02-14 20:36:51 -08:00
Steve Chávez and Joe Nelson
c15f693dbb
Move DbRequest building functions to new module ( #787 )
2017-01-17 21:59:59 -08:00
Steve Chávez and Joe Nelson
7e2cb5fe1c
Fix alias in select for mutate queries and small refactor ( #779 )
2017-01-16 23:20:02 -08:00
Joe Nelson and GitHub
104a7ed4fa
Use a mime type to request singular JSON responses ( #763 )
2017-01-16 15:11:37 -08:00
Ruslan Talpa and Joe Nelson
16fd3a57ff
Fix #746 ( #769 )
...
also fix broken text env
After the last couple of commits the tests ran correctly only on a
fresh db, in addition, the roles within the db were not created/dropped
on each request and we need that since their privileges differ and we
need to to have an absolute clean db on each execution
2016-12-18 15:46:53 -08:00
Ruslan Talpa and Joe Nelson
15c95399f8
Prevent database memory cosumption by prepared statements caches ( #768 )
2016-12-09 09:46:28 -08:00
Diogo Biazus
6c275fcec2
Coalesce types UniformObjects and Payload into the new PayloadJSON
2016-11-27 23:55:26 -05:00
Diogo Biazus
090a62a2c8
Removes error case from Payload type. Now we don't build a payload when the parsing fails.
2016-11-27 23:55:02 -05:00
dsimunic and Joe Nelson
ae40641963
Introduce new 'Prefer' header, params=single-object ( #739 )
2016-11-20 14:14:39 -08:00
Joe Nelson
9dddd144a4
count(*) is faster than count(1)
2016-10-23 20:44:42 -07:00
Joe Nelson and GitHub
74e68408e6
Bring packages up to date ( #722 )
...
* Bring packages up to date
* New LTS includes deps now
Use stack to select most versions
* Alphabetize packages
* Strip down packages
Switch tests to protolude
* Appease cabal check with base version constraint
2016-10-19 22:25:58 -07:00
Joe Nelson
5d904dfd66
Merge PR #713
...
Resolve petty CHANGELOG conflict
2016-10-12 20:52:40 -07:00
SteveBash
191601f129
Add ability to order by jsonb keys, fix #644
2016-10-05 14:46:12 -05:00
Ruslan Talpa
211e3d4141
fix relation detection bug and allow offset on lower levels
2016-10-05 11:34:07 +03:00
SteveBash
50ae48295d
Allow using nulls order without explicit order direction, fix #552
2016-10-04 16:11:19 -05:00
Joe Nelson and GitHub
f3b79bcc40
Use table alias unlikely to conflict with a column name ( #705 )
2016-09-08 08:16:47 -07:00
Diogo Biazus and Joe Nelson
6f737056a2
Protolude completion in library and executable ( #697 )
2016-08-21 15:10:19 -07:00
Ruslan Talpa
1372de6f43
query simplification by @diogob
2016-06-28 12:18:12 +03:00
Ruslan Talpa
2f166088c8
response shaping and filtering for rpc proc calls
2016-06-28 12:09:58 +03:00
Ruslan Talpa and Joe Nelson
b916ed907b
fix #637 ( #647 )
2016-06-17 10:45:25 -07:00
Joe Nelson
7563b5e2f4
Move unwords higher for branch parity
2016-06-02 08:40:24 -07:00
Joe Nelson
5e3d9442af
Use table defaults for empty object insert
...
Fixes #616
2016-06-02 08:40:24 -07:00
Ruslan Talpa
dc727f900d
suggested cleaup by @begriffs
2016-05-31 14:55:31 +03:00