-
Notifications
You must be signed in to change notification settings - Fork 110
Release Notes
okram edited this page Sep 17, 2014
·
73 revisions
Rexster: A Graph Server
http://rexster.tinkerpop.com

<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster-core</artifactId>
<version>2.6.0</version>
</dependency>- Sessionless RexPro requests are now blocked when security is enabled – use in-session requests when using security.
<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster-core</artifactId>
<version>2.5.0</version>
</dependency>- Rexster Console
.rexster_historyfile now stored in the user root directory. - Prevent
RexsterClientfrom continually retrying if a connection to Rexster is not established. -
ScriptEngineinitialization scripts properly reload on change torexster.xml. - Add
read-buffersetting inrexster.xmlto increase the size of requests possible to RexPro. - Rexster respects the
REXSTER_HOMEenvironment variable for purpose of locating therexster.xmlfile - Altered the semantics of
RexsterClient.close() - Add configuration (
<config-check-interval>) for the interval of time to use to checkrexster.xmlfor change. - Gremlin Extension supports
returnTotalparameter that will iterate all results and put acountin results. - Fix problem where HTTP metrics configuration for rates was not being respected
- Support for configuration of
IdGraphandLinkedDataSailGraph - Remove OrientDB dependencies
<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster-core</artifactId>
<version>2.4.0</version>
</dependency>- Support server monitoring features via Metrics
- Add performance testing.
- The port rexster serves HTTP/REST on can no longer be overriden from
rexster.sh. - Moved rexster-*.sh and rexster-*.bat to bin/ (noticeable to developers of source only)
- Changes to
rexster.xmlno longer require a restart of Rexster to become available. - Allow multiple and separate Script Engine configurations with the addition of the
<script-engines>element inrexster.xml- Configuration of multiple Script Engine initialization files in
rexster.xml. - Configuration of additional imports to the Script Engine.
- Configuration of multiple Script Engine initialization files in
- Property data types in REST now properly support
booleanvalues. - Serialize RexPro in the same thread that mutates the graph to prevent partial serialization of property values with Neo4j.
- Improve logging for
- Graph configuration errors
- Bad/missing Gremlin intialization scripts.
- Incoming RexPro messages
- Changed `keys` for root of results in key indices REST API to `results` to be more consistent with the rest of the API.
- Frames Kibble uses
FramedGraphFactoryto create graphs. - Updating rexpro version to v1
- Added JSON serializer option to rexpro
<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster-core</artifactId>
<version>2.3.0</version>
</dependency>- Both RexPro and HTTP Server can be started independently with out configuration parameters, as all now have default values.
- OPTIONS for extensions returns a default response.
- Batch Kibble allows for multiple lookups within an manual or key index.
- Rexster can initialize the Gremlin Script Engine with a script file referenced in
rexster.xml. - More convenience methods for
ExtensionResponseto help simplify writing extensions. - Change default IO strategy to
leader-follower. - Prevent Rexster’s forced Gremlin Script Engine reset as it is now handled by the Script Engine itself.
- Configuration in
rexster.xmlfor allowing other Script Engine flavors of Gremlin to be exposed. - Remove
rexster.xmlembedded as a resource as the final fallback for configuring Rexster at startup. - Allow override of default embedded
log4j.propertiesfile with one in the root ofREXSTER_HOME. - Improve logging configurability.
-
RexsterClientfor Java connectivity to Rexster through RexPro. - Enable or disable Dog House through
rexster.xml - Fix JSON serialization of
Rowresults as aMapfrom the Gremlin Extension. - Improved JSON serialization for Map that uses a graph element as the key.
<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster-core</artifactId>
<version>2.2.0</version>
</dependency>- Major refactoring and renaming of core “server” classes.
-
ExtensionRequestParameternow supports adefaultValue. - Requests with
OPTIONSnow returnsOPTIONSin theAccess-Control-Allow-Methodsand a response 200 instead of 204. - Upgrade to Grizzly 2.2.18 and Jersey 1.14.
- Include new configuration options in
rexster.xml-
enable-jmxelement turns on or turns off JMX monitoring. -
thread-poolsection gives control over how many threads are allocated to Rexster. -
max-post-sizeelement controls the size of the data that can be POSTed to Rexster. -
max-header-sizeelement controls the size of the request header that can be sent to Rexster. -
upload-timeout-milliselement represents the length of the time in milliseconds that Rexster will wait for an upload to occur.
-
- Fixed Rexster Console where some
nullresults were not being rendered back to it. - Fixed Rexster Console issues where transactions were not executing properly as requests within a session were not being bound to specific threads.
- Update the Dex configuration of
rexster.xmlto accept an external configuration file.
<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster-core</artifactId>
<version>2.1.0</version>
</dependency>- Added Travis continuous integration support
- Fixed issue with POST and DELETE of key indices via REST API.
- Configuration element of
rexster.xmlto bind the rexpro hostname. - Vertex query API.
- Fixed issue with inconsistencies of PUT, POST, and DELETE around manual indices.
- Restructured project to introduce rexster-core, rexster-console and rexster-protocol.
- Integration tests now run across TinkerGraph, Neo4j, OrientDB, Titan and Dex by default (Titan is disabled by default)
<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster</artifactId>
<version>2.0.0</version>
</dependency>-
REST API for POSTing new indices supports
paramsargument which constructs a parameter map which will configure the newly created index - The DELETE operation for the Graph resource has been removed since Blueprints no longer supports
Graph.clear() - The Index resource no longer has a
keyssub-resource nor the notion of “automatic” or “manual” indices due to changes in the Blueprints API - Add metadata from graph
Featuresto the Graph resource -
KeyIndexResourceto access features ofKeyIndexableGraphinstances -
VertexResourceandEdgeResourcesupport key index filtering - Improved messaging to the server console regarding which
rexster.xmlfile is being loaded

<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster</artifactId>
<version>0.8</version>
</dependency>- Added
PUTto the Indices resource to place elements in an index. This changes split this functionality away fromPOST.POSTis now only for creating new indices. -
DELETEof index elements now accepts parameters to be sent as an entity on the request. - Fix PermGen issues with Gremlin processing. This is bit of a stop gap fix in that it simply resets the engine after so many script executions.
- The Gremlin Extension now includes a
languageparameter so that one can specify the flavor of Gremlin that is being used. - Gremlin Extension takes a
paramsextension and applies the keys and values within it to the bindings of the Gremlin script engine. - Dog House uses require.js for module loading.
- Simple graph visualization through JIT.
- Dog House provides a filter option when browsing vertices and edges. Filters are backed by indices such that the user can select an index then specify a key/value to filter the paged results by.
- Dropped support for support for
application/x-www-form-urlencoded. - Basic authentication configurable through
rexster.xmland extensible via extensions toAbstractSecurityFilter. - Better handling of null values being passed to Gremlin Extension as bindings.
- Allow configuration of the Rexster server host in
rexster.xml. - Launching an extension from Dog House that fails now properly removes the “Loading” spinner and displays the error.
- Encode the URI for extensions launched in Dog House so that they are properly encoded for cut and paste use.
- Added a mock
TransactionalGraphimplementation so that aTinkerGraphcan be tested in a transactional mode (configured throughrexster.xml). - Results from the Gremlin Extension that are
Iteratorimplementations are now paging properly. - Added the
loadparameter to the Gremlin Extension so that it is possible to execute server-side stored Gremlin scripts. - Gremlin Extension can be configured so that it does not execute scripts sent on the
scriptparameter leaving it to only process server-side scripts with theloadparameter. - Gremlin Extension can be configured to cache server-side scripts.
- Sample Kibble
- Secure Sample Kibble shows how to get a
Principalfrom theSecurityContext.
- Secure Sample Kibble shows how to get a

<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.7</version>
</dependency>- Improved performance for most types of requests.
- Added two custom Rexster mime types:
application/vnd.rexster-v1+jsonandapplication/vnd.rexster-typed-v1+json.- The
rexster.showTypesgeneral parameter does not exist anymore and is replaced byapplication/vnd.rexster-typed-v1+json. - Rexster respects the data types of POSTed
application/jsonmime type for edges and vertices. - Extensive refactoring of content negotiation and unit tests around these changes.
- The
- Fixed problem with the Prefix resource where SailGraph in read-only mode generated 500 (Internal Server Error) responses.
- Added SPARQL Repository configuration.
- Fixed error that appeared on multiple successive calls to PUT on the Vertex and Edge Resources.
- The
extensionkey in JSON responses now includes more information:- The full URI to the extension resource (not just the relative URL).
- Parameters for the query string.
- The name of the extension (not just the description).
- Dog House has Rexster Extension support
- List all configured extensions for graphs, vertices and edges.
- Launch extensions that can be accessed with a GET and that return JSON.
- Dog House is kinder to SailGraph implementations (generally cosmetic changes).
- Rexster Console only hosts Gremlin-flavored script engine implementations. Currently, that means that
gremlin-groovyis the only exposed language. - Upgrade all Kibbles to use GraphSON.
- Sample Kibble
- New Parameters Sample Kibble shows how to deal with injecting different data types into the request.

<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.6</version>
</dependency>
<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>batch-kibble</artifactId>
<version>0.6</version>
</dependency>
<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>frames-kibble</artifactId>
<version>0.6</version>
</dependency>
<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>sample-kibbles</artifactId>
<version>0.6</version>
</dependency>
<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>sparql-kibble</artifactId>
<version>0.6</version>
</dependency>- Support for High Availability mode of Neo4j
- The
rexster-stop.shcommand is now consistent with therexster-stop.shin terms of parameter naming and shorthand. - Retrieve adjacency vertices through REST API of the vertex resource.
- Filter by multiple edge labels in the REST API of the vertex resource.
- PUT on vertex and edge resources in the REST API replaces all graph element properties with the specified set.
- Combine rexster-start.sh and rexster-stop.sh into rexster.sh with new
-versionand-statuscommands. - If the
-cargument is not passed at startup, Rexster first tries to readrexster.xmlfrom the root of the working directory. If it cannot be found then it tries to read from a resource. - Dog House and REST API both serve from port 8182
- Dog House is at
http://localhost:8182/doghouse - The REST URI scheme has changed slightly to include a
graphssegment, as in:http://localhost:8182/graphs/tinkergraph
- Dog House is at
- RexPro sessions that remain idle for a configurable amount of time are destroyed.
- Support OPTIONS HTTP method for all REST resources so that HTTP Access Control works properly when used (eg. jquery).
- New Batch Kibble makes it possible to execute commands in a batch/transactional fashion.
- Bring all Kibbles up to the latest version of REST API changes for the current version of Rexster.

<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.5</version>
</dependency>- It is now possible to mix and match root level extensions with pathed extensions in the same extension class.
- Support the
Accept-Charsetrequest header. - The Dog House Gremlin Console now handles UTF-8.
- The HTTP method is now displayed in the hypermedia for extensions.
- Added the
parseToJsonparameter to the@ExtensionRequestParameterso that it is possible for extensions to control whether or not a specific parameter’s value is parsed to JSON or not. - The
<graph-file>parameterrexster.xmlis now used to locate a graph, not to initialize it. AffectsTinkerGraphandMemoryStoreSailGraphimplementations. - When requesting an index by name
http://localhost/graph/indices/edgethe index is wrapped in aresultskey in the return JSON. This is more consistent with other return values. - Indices returned from
http://localhost/graph/indicesor when requested by name have their class value set toedgeorvertexas opposed to the full canonical class name. - Short-hand command line options.
- Extensions can be broken up across multiple classes within the same namespace and name.
- Used the Blueprints
JSONWriterto serialize to JSON which fixed a number of problems related to serialization of multi-layered hashes and lists. - Nulls in iterators returned through Dog House are displayed as “null”.
- Rexster Console for evaluating scripts remotely on a Rexster server.

<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.4.1</version>
</dependency>- Fixed transactional graph error
<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.4</version>
</dependency>- Failed vertex POST now returns a “not found” status if the identifier cannot be found in the graph
- Raw JSON can be POSTed for vertices and edges.
- Extension can now contain a hyphen in the extension name and namespace.
- POSTing raw JSON and form data is now supported on the IndexResource.
- Gremlin scripts that return a null value return a null as a result in the JSON.
- Non-configured extensions do not appear in JSON for graphs, vertices, and edges.
-
@ExtensionDescriptoris not required for an extension to work within Rexster. - Support for
RexsterGraphconfiguration withinrexster.xml. - The
returnKeysparameter now works consistently across Rexster to only accept an array of keys as a value. - POST of form data to extensions.
-
POST to
prefixesresource works consistently now supporting form data, JSON and query string parameters. - Ensured that all requests for a graph that does not exist throws an NOT FOUND HTTP status code.
- Support start and stop of transactions for POST/DELETE operations
- Better messaging returned as JSON if Rexster cannot find an extension class not found in
com.tinkerpop.rexster.extension.RexsterExtension. - Extensions provide support for all standard HTTP methods allowing control through the
ExtensionDefinition.

<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.3</version>
</dependency>- Minor changes to rexster.xml:
- Addition of the
<base-uri>element. - Renaming of
<webserver-port>to<rexster-server-port>. - Renaming of
<adminserver-port>to<doghouse-server-port>. - Removed some redundancy where rexster.xml had to reference itself within intialization parameters.
- Addition of the
- The port to which the Dog House connects for REST services is no longer hardcoded and is configurable given the changes to rexster.xml defined above.
- Supports DEX graph database.
- Neo4jSail is no longer supported within Rexster and Blueprints.
- Blueprints added a
countmethod to indices. That function is exposed viahttp://localhost/graph/indices/myindex/count?key=name&value=val - Introducing the new extension model. The Gremlin traversal has been converted to the extension model. Traversals have all been removed from Rexster.
- The following REST API parameters have a new format:
-
rexster.show_typesis nowrexster.showTypes -
rexster.return_keysis nowrexster.returnKeys -
rexster.allow_cachedis nowrexster.allowCached
-
- The following standard properties contained within the JSON response have been reformatted:
-
up_timeis nowupTime -
query_timeis nowqueryTime -
read_onlyis nowreadOnly
-
- Arrays are now serialized to JSON in the same fashion as Lists.
- Requesting an index resource without parameters will return information about that index instead of a Bad Request status code.
- Removed built-in caching functions.
- New command line “debug” option for Rexster server which will turn on all logging of the underlying Jersey/Grizzly server.
- Remote shutdown.
- Paging model changed in The Dog House. There is no longer a “Move Last” button when paging through vertices and edges.
- Prefix resource for
SailGraphimplementations.

<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.2</version>
</dependency>- Fixed problem with
return_keyparameter on a Gremlin Traversal from causing an error. - The
return_keysoption will now only filter out non-metadata values. - Rexster operational when deployed within Tomcat after the conversion from Restlet to Jersey.
- Fixed problem where specifying a start offset without an end offset was not returning all records from the start to the unspecified end of the list.
- Fixed problem where specifying a single
return_keywas returning all properties. - Command line options for overriding configuration options in
rexster.xml. - Graphs configured in
rexster.xmlhave a<read-only>option. - Added a Gremlin console to The Dog House.
- Added vertex and edge property pages to The Dog House such that it is now possible to traverse the graph textually.
- Bumped to Blueprints 0.5, Pipes 0.3.1, and Gremlin 0.8.

<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.1.5</version>
</dependency>- Support for Gremlin 0.7
- Bug fix in configuration parameters of
rexster.xmlpreventing certain values from being configurable. - Early release of web tool for Rexster for browsing vertices and edges. Will be expanded with additional features in future releases. This feature is experimental only.
- Sail support
- Unit test coverage greatly expanded.
<dependency>
<groupId>com.tinkerpop</groupId>
<artifactId>rexster</artifactId>
<version>0.1</version>
</dependency>- Initial release of the web service shell and rank and score support