Re: Ignite REST API is not actually RESTful

2016-06-20 Thread Vladimir Ozerov
Be stateless == be intrinsically limited. No transactions, no efficient queries, etc.. We have serious interest to both HTTP protocol itself and to Node.JS integration which is based on it. If we are concerned about "REST" word, then lets rename it to "not-exactly-REST" :-) Vladimir. On Mon, Jun

Re: Ignite REST API is not actually RESTful

2016-06-20 Thread Anton Vinogradov
Alexey, In this case we will make Not REST again. Here is good article about idempotency: http://www.restapitutorial.com/lessons/idempotency.html On Mon, Jun 20, 2016 at 5:46 PM, Alexey Kuznetsov wrote: > Pavel, > > >> What is the use case? > As far as I know it could

Re: Ignite REST API is not actually RESTful

2016-06-20 Thread Alexey Kuznetsov
Pavel, >> What is the use case? As far as I know it could be used for quick testing. But I agree that it is not mandatory. Testing could be done with appropriate tools. >>> large SQL query that could be fetched page by page >>REST is stateless. This should be handled by the user (with

Re: Ignite REST API is not actually RESTful

2016-06-20 Thread Pavel Tupitsyn
Alexey, > be able to run all command from browser address line What is the use case? Non-developers do not need that. Developers have better tools than a browser to test an API. GET requests must never modify data, this is very important. People and software assume GET to be safe. > large SQL

Re: Ignite REST API is not actually RESTful

2016-06-20 Thread Alexey Kuznetsov
Pavel, Current API was developed long time ago and was not actively developed. It may looks inconsistent for some use cases. May be it is a good idea to develop new API and deprecate current. >From my experience we should take care: 1) "null" cache names 2) some commands could have state, for

Re: Ignite REST API is not actually RESTful

2016-06-20 Thread Sergey Kozlov
We also can consider to keep the compatibility and move new API either to new http port or use new url (e.g. http://localhost:8080/api/rest instead of http://localhost:8080/ignite) On Mon, Jun 20, 2016 at 5:15 PM, Alexey Kuznetsov wrote: > Pavel, > > Current API was

Re: Ignite REST API is not actually RESTful

2016-06-20 Thread Anton Vinogradov
Pavel, Looks good, but: According to Swagger demo need to use singular (caches->cache). And I'm also not sure we need ignite preffix. On Mon, Jun 20, 2016 at 5:15 PM, Alexey Kuznetsov wrote: > Pavel, > > Current API was developed

Ignite REST API is not actually RESTful

2016-06-20 Thread Pavel Tupitsyn
Igniters, There are two serious issues with current Ignite REST API: 1) It does not care about HTTP verbs (GET/POST/etc). GET must never modify anything, for example (because GET requests can be cached, duplicated, etc). 2) Proper resource paths are not used For example, to get a cache value,