[JBoss JIRA] (ISPN-8535) Rest API redesign
by Gustavo Fernandes (Jira)
[ https://issues.jboss.org/browse/ISPN-8535?page=com.atlassian.jira.plugin.... ]
Work on ISPN-8535 started by Gustavo Fernandes.
-----------------------------------------------
> Rest API redesign
> -----------------
>
> Key: ISPN-8535
> URL: https://issues.jboss.org/browse/ISPN-8535
> Project: Infinispan
> Issue Type: Feature Request
> Components: Server
> Affects Versions: 9.2.0.Final
> Reporter: Gustavo Fernandes
> Assignee: Gustavo Fernandes
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> Infinispan REST API deals with only one resource, (the cache) and maps all operations on the cache using HTTP verbs and request parameters. The API assumes the URI is related to the cache making it hard to add new kinds of resources without causing ambiguous references.
> Since we now have other types of entities, such as counters, scripts, templates, etc, and each one of them can involve different operations, we should make the API more "Restful" by using more than one resource and collections of resources, plus HTTP verbs and operations on them. Examples:
> * Create a cache: POST /rest/caches
> * Delete a cache: DELETE /rest/caches/myCache
> * Create a template: POST /rest/templates
> * Delete a template: DELETE /rest/templates/myTemplate
> * Create an entry: POST /rest/caches/myCache/1
> * Create a counter: POST /rest/counters
> * Get a counter value: GET /rest/counters/mycounter
> * Increment a counter: GET /rest/counters/mycounter?action=increment
> * Search a cache: GET /rest/caches/myCache?action=search
> * Create a script: POST /rest/scripts/
> * Get a script source: GET /rest/scritps/myScript
> * Execute a script: GET /rest/scripts/myScript?action=execute¶m1=foo
> * Stop individual servers and the full cluster
>
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 8 months
[JBoss JIRA] (ISPN-8535) Rest API redesign
by Gustavo Fernandes (Jira)
[ https://issues.jboss.org/browse/ISPN-8535?page=com.atlassian.jira.plugin.... ]
Gustavo Fernandes updated ISPN-8535:
------------------------------------
Status: Open (was: New)
> Rest API redesign
> -----------------
>
> Key: ISPN-8535
> URL: https://issues.jboss.org/browse/ISPN-8535
> Project: Infinispan
> Issue Type: Feature Request
> Components: Server
> Affects Versions: 9.2.0.Final
> Reporter: Gustavo Fernandes
> Assignee: Gustavo Fernandes
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> Infinispan REST API deals with only one resource, (the cache) and maps all operations on the cache using HTTP verbs and request parameters. The API assumes the URI is related to the cache making it hard to add new kinds of resources without causing ambiguous references.
> Since we now have other types of entities, such as counters, scripts, templates, etc, and each one of them can involve different operations, we should make the API more "Restful" by using more than one resource and collections of resources, plus HTTP verbs and operations on them. Examples:
> * Create a cache: POST /rest/caches
> * Delete a cache: DELETE /rest/caches/myCache
> * Create a template: POST /rest/templates
> * Delete a template: DELETE /rest/templates/myTemplate
> * Create an entry: POST /rest/caches/myCache/1
> * Create a counter: POST /rest/counters
> * Get a counter value: GET /rest/counters/mycounter
> * Increment a counter: GET /rest/counters/mycounter?action=increment
> * Search a cache: GET /rest/caches/myCache?action=search
> * Create a script: POST /rest/scripts/
> * Get a script source: GET /rest/scritps/myScript
> * Execute a script: GET /rest/scripts/myScript?action=execute¶m1=foo
> * Stop individual servers and the full cluster
>
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 8 months
[JBoss JIRA] (ISPN-10450) ServerNG: improve the initial experience
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10450?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10450:
-----------------------------------
Sprint: DataGrid Sprint #31, DataGrid Sprint #32 (was: DataGrid Sprint #31)
> ServerNG: improve the initial experience
> ----------------------------------------
>
> Key: ISPN-10450
> URL: https://issues.jboss.org/browse/ISPN-10450
> Project: Infinispan
> Issue Type: Enhancement
> Components: Server
> Reporter: Tristan Tarrant
> Assignee: Tristan Tarrant
> Priority: Major
> Fix For: 10.0.0.Beta5
>
>
> A list of various items to improve the initial serverng experience:
> * Localizable help messages for server and user-tool
> * Stack selection via the command-line (-j)
> * Port binding via the command-line (-p)
> * Make default configuration (infinispan.xml) clustered
> * Add non-clustered configuration infinispan-local.xml
> * Disable TLS/keystore and memcached connector in default config
> * Refactor shells scripts extracting common logic to common.sh
> * Add a README.md file to get users started
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 8 months
[JBoss JIRA] (ISPN-10431) REST client
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10431?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10431:
-----------------------------------
Sprint: DataGrid Sprint #31, DataGrid Sprint #32 (was: DataGrid Sprint #31)
> REST client
> -----------
>
> Key: ISPN-10431
> URL: https://issues.jboss.org/browse/ISPN-10431
> Project: Infinispan
> Issue Type: Feature Request
> Components: REST
> Reporter: Tristan Tarrant
> Assignee: Tristan Tarrant
> Priority: Major
> Fix For: 10.0.0.Beta5
>
>
> There are several places in Infinispan where we need a common HTTP client API:
> * CLI
> * REST loader
> * Testsuite
> Since the testsuite already has one based on AHC, it can be refactored and reused.
> In the future it can be enhanced with ISPN-5186
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 8 months
[JBoss JIRA] (ISPN-10423) RocksDB ReadOptions memory leak
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10423?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10423:
-----------------------------------
Sprint: DataGrid Sprint #31, DataGrid Sprint #32 (was: DataGrid Sprint #31)
> RocksDB ReadOptions memory leak
> -------------------------------
>
> Key: ISPN-10423
> URL: https://issues.jboss.org/browse/ISPN-10423
> Project: Infinispan
> Issue Type: Bug
> Components: Loaders and Stores
> Affects Versions: 10.0.0.Beta4, 9.4.15.Final
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Priority: Major
> Fix For: 10.0.0.Beta5, 9.4.16.Final
>
>
> Currently our rocksdb store impl creates a new ReadOptions instance per iterator created. As per the RocksDB we should be calling {{dispose()}} on this once it goes out of scope, so that the c++ underlying impl can free the memory. Currently we're not doing this, resulting in a memory leak.
> As we only ever use the same ReadOptions for all iterators, we should simply re-use a singleton for all iterators and then dispose of this on shutdown.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 8 months
[JBoss JIRA] (ISPN-10422) Deprecate MediaType::parse in favour of MediaType::fromString
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10422?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10422:
-----------------------------------
Sprint: DataGrid Sprint #31, DataGrid Sprint #32 (was: DataGrid Sprint #31)
> Deprecate MediaType::parse in favour of MediaType::fromString
> -------------------------------------------------------------
>
> Key: ISPN-10422
> URL: https://issues.jboss.org/browse/ISPN-10422
> Project: Infinispan
> Issue Type: Enhancement
> Components: API
> Affects Versions: 10.0.0.Beta4
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Priority: Major
> Fix For: 10.0.0.Beta5
>
>
> Currently {{org.infinispan.commons.dataconversion.MediaType}} exposes both {{fromString}} and {{parse}} methods to create an instance from a String. We should deprecate the latter in favour of the former and update all internal code references.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 8 months
[JBoss JIRA] (ISPN-10419) RocksDB purge should not utilise ArrayList to store multiple expired keys
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10419?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10419:
-----------------------------------
Sprint: DataGrid Sprint #31, DataGrid Sprint #32 (was: DataGrid Sprint #31)
> RocksDB purge should not utilise ArrayList to store multiple expired keys
> -------------------------------------------------------------------------
>
> Key: ISPN-10419
> URL: https://issues.jboss.org/browse/ISPN-10419
> Project: Infinispan
> Issue Type: Enhancement
> Components: Loaders and Stores
> Affects Versions: 10.0.0.Beta4
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Priority: Major
>
> Currently the RocksDB purge method stores multiple keys that expire at the same time in a ArrayList associated with the expiry time. This is currently marshallable because ArrayList is serializable and we utilise Jboss-marshalling, however ISPN-10354 means this is no longer possible in embedded mode when `infinispan-jboss-marshalling` is not present. Therefore, we should create a `ExpiryBucket` that can be marshalled via the persistence marshaller i.e. protobuf based.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 8 months