Starting from version 6, GraphDB now includes three separate products with their own version numbers: GraphDB Engine, GraphDB Workbench and GraphDB Connectors (this was an experimental feature in 6.0 and 6.1). New features and significant bug-fixes/updates for the last few releases are recorded here. Each component's full version numbers is given as:
major.minor.build_number
e.g. 5.3.5928 where the major number is 5, the minor number is 3 and the build number is 5928.
The integrated releases have their own version, e.g. 6.2.0, 6.2.1 and so on.
Releases with the same major and minor version numbers do not contain any new features. The only difference is that releases with later build numbers contain fixes for bugs discovered since the previous release. New or significantly changed features are released with a higher major or minor version number.
WB-682 Updates execute but report fake generic error
WB-683 Spinner on update doesn't go away in Safari
GraphDB Connectors
No changes
GraphDB 6.4.3
Highlights:
bugfixes in the engine
explain plan improvement (experimental)
improved diagnostics and notifications in the cluster
bug fixes in the Workbench
Component versions:
Sesame
Engine
Workbench
Connectors
2.7.8
6.2.4
6.6.2
4.1.2
GraphDB Engine
Features and improvements:
OWLIM-2344 Additional JMX notifications in the master
OWLIM-2398 Ignore n number of faults in the worker to make the status reporting stable
OWLIM-2318 Show cluster status in the MBean
OWLIM-2387 New worker statuses in master - REPLICATION_SERVER, REPLICATION_CLIENT
OWLIM-2172 Alternative explain plan accesible through onto:experimental-explain that produces much better results than the old explain plan
OWLIM-2380 Explain plan support for CONSTRUCT, DESCRIBE and ASK queries
Bugfixes:
OWLIM-2389 Master not reporting failed transaction to a client
OWLIM-2383 Reordering PluginTriplePatterns introduces inconsistent query plans with duplicates
OWLIM-2385 Failing the compile PIE file with error incompatible types required: java.lang.String found: boolean
OWLIM-2395 Long FILTERs with more than 16 OR clauses are incorrectly optimized
OWLIM-2346 Backup operation makes the cluster unresponsive
OWLIM-2394 VALUES with single BindingSet before BIND is converted to Filter (as a result of optimization) but then disappears from the query after SubQuery.optimize()
OWLIM-2378 rdfs:Resource resource appears from nowhere after a rulset change
OWLIM-2374 JVM garbage collection shouldn't be initiated when cleaning old connections
OWLIM-1532 Worker hasn’t recovered after clearing
OWLIM-1576 Build the name of the ClusterInfo bean from the master repository name and not the current Thread name
OWLIM-2370 Unable to delete statements from GraphDB
OWLIM-2386 Exceptions on begin transaction are not handled properly
OWLIM-2284 Exception when importing large files
OWLIM-2367 The database engine shows incorrect repository size
OWLIM-2376 Failing the compile PIE file with error incompatible types required: java.lang.String found: boolean
OWLIM-2307 Negative number of Pending Writes showing in JMX properties of the master
OWLIM-2238 NQuadsSimpleParser does not handle baseUri properly
OWLIM-2399 Optimization for IN -> VALUES fails to recognize NOT IN operator
GraphDB Workbench
Bug fixes:
WB-105 Some errors on query execution not reported to user
WB-635 Error reporting for unreachable locations
WB-636 Access denied when trying to execute query
WB-637 Unable to download results from System repository
WB-639 Workbench cannot load settings from previous releases
WB-671 No permission to execute SPARQL queries over SSL if security is enabled
GraphDB Connectors
No changes
GraphDB 6.4.2
Highlights:
bugfixes in the engine
explain plan improvement (experimental)
storage tool improvement
improve data consistency in EE
improvements and fixes for some basic scenarios in cluster environment - rolling upgrade, backup, replication
Component versions:
Sesame
Engine
Workbench
Connectors
2.7.8
6.2.3
6.6.1
4.1.2
GraphDB Engine
Features:
OWLIM-2172 Explain plan improvments
OWLIM-2178 Cluster data consistency per connection
OWLIM-1368 SPARQL 1.1 VALUES implementation
OWLIM-2281 Read-only mode for master
OWLIM-2283 Strict consistency mode for master
OWLIM-2282 Suspend-backup flag for master
OWLIM-2199 Storage tool 'scan' command - groups statements by flags and compare counts for each group between indexes
OWLIM-2313 Storage tool 'export' command
OWLIM-2198 Storage tool 'repair' command - compares and updates all indexes
OWLIM-2354 New JMX command to flush and shutdown GDB repository
OWLIM-2358 Client Failover API - configurable timeout before giving up requests and run-time re-configuration support
Bugfixes:
OWLIM-2353 Fix: Reads stop after 2 workers are taken down in 1m3w setup
OWLIM-2197 Fix: Invalid FILTER clause (?a = x && ?a = y) return false positive results than the old explain plan
OWLIM-2333 Fix: A worker reports different fingerprints when initialized for first time and after restore
OWLIM-2250 Fix: Investigate performance degradation and wrong results on queries in GraphDB 6.2.2 compared to 6.1.8410
OWLIM-2351 Fix: Ruleset with a specific consistency checking rule fails to deliver a descriptive exception
OWLIM-2369 Fix: Adding non-existing worker + restart of the master leads to less workers shown in JMX
OWLIM-2341 Fix: Correct the console messages produced by the storageTool when rebuilding indexes files.
OWLIM-2248 Fix: Properly patch the logback.xml configuration file in the enterprise distribution
OWLIM-2316 Fix: Large queries crash GraphDB with OutOfMemoryError
OWLIM-2337 Fix: Deadlock when running the finalizer in sail connection impl might result in a deadlock
OWLIM-2310 Fix: Group by queries are not stopped by timeouts since 6.1.SP4
GraphDB Workbench
No changes
GraphDB Connectors
No changes
GraphDB 6.4.1
This release of GraphDB contains some fixes for the Workbench. If you use the Workbench we strongly recommend you to upgrade.
Component versions:
Sesame
Engine
Workbench
Connectors
2.7.8
6.2.2
6.6.1
4.1.2
GraphDB Engine 6.2.2
No changes.
GraphDB Workbench 6.6.1
WB-611 Fix: Export not working when security is ON
WB-607 Fix: Workbench behind some proxies doesn't know what port for the repository cookie to check
WB-604 Fix: Unreachable location makes cluster manager unusable
WB-603 Fix: Cluster view doesn't work when you have locations that were added with localhost only
WB-602 Fix: Non initialized masters in the cluster view are disabled and the reason is misleading
WB-601 Fix: Adding invalid values in the edit dialog of the location closes the dialog and doesn't save the values
WB-600 Fix: First attached location is not properly validated
GraphDB Connectors 4.1.2
No changes.
GraphDB 6.4.0
This release of GraphDB focuses on the usability and stability of the Workbench. If you use the Workbench we strongly recommend you to upgrade. The release also introduces support for Blueprints RDF/Gremlin and SPARQL-MM. There are no changes in the Engine or the Connectors.
Component versions:
Sesame
Engine
Workbench
Connectors
2.7.8
6.2.2
6.6.0
4.1.2
GraphDB Engine 6.2.2
No changes.
GraphDB Workbench 6.6.0
Improved overall usability
Tens of bugs fixed
New: Single page application for faster loading
New: Completely revamped cluster manager
More usability and functionality
Near realtime tracking of cluster status and changes introduced outside the cluster manager
New: Improvements in Users management
users can have permissions to a repository in a particular location only
non-admin users can change their passwords
New: Status of imported server files kept per repository
New: Improvements to the SPARQL editor
tracking of syntax errors in the name of each tab
creating links to saved queries
Creating repositories through TTL files
Revised REST API
managing multiple locations and repositories
cluster management and backup/restore without JMX
user and permissions management
Numerous visual and presentational changes
GraphDB Connectors 4.1.2
No changes.
Other
Support for Blueprints RDF
Support for SPARQL-MM
GraphDB 6.3.1
This is a release of GraphDB that addresses critical issues in the Connectors. If you use the Connectors we strongly recommend you to upgrade. There are no changes in the Engine or the Workbench.
Component versions:
Sesame
Engine
Workbench
Connectors
2.7.8
6.2.2
6.5.2
4.1.2
GraphDB Engine 6.2.2
No changes.
GraphDB Workbench 6.5.2
No changes.
GraphDB Connectors 4.1.2
STORE-202 New: Failure to access a single Elasticsearch/Solr/Lucene instance on repo init should not disable the connector
STORE-203 New: Boolean fields in Elasticsearch must always be non-tokenised
STORE-206 Fix: clear() or clear(context) does not update the index
STORE-207 Fix: Wrong query execution when multiple joins are used in SPARQL
STORE-209 New: Improved error reporting from Elasticsearch servers
STORE-210 Fix: Copy fields that contain URIs are not tracked as URIs and not returned as URIs when used in facet search
STORE-211 Fix: Multilevel aggregations do not assign IDs/parent IDs properly
GraphDB 6.3.0
Highlights:
bug fixes in the Connectors and the Workbench
new features in the Connectors
no changes in the engine
Component versions:
Sesame
Engine
Workbench
Connectors
2.7.8
6.2.2
6.5.2
4.1.0
GraphDB Engine 6.2.2
No changes. This is a release of GraphDB that includes changes only in the Workbench and the Connectors. If you use the Connectors or the Workbench we strongly recommend you to upgrade.
GraphDB Workbench 6.5.2
WB-198 Fix: Changing the password of the default admin user works only until tomcat is restarted
WB-490 Fix: Adding a location that was autocompleted in the browser results in an error
GraphDB Connectors 4.1.0
STORE-165 New: Improved splitting for facet field values
STORE-170 Fix: Solr connector overrides "rows" and "start" for raw queries
STORE-191 Fix: Lucene connector does not index xsd:dateTime properly
STORE-192 Fix: Invalid values in typed literals are fatal but should rather be ignored (Lucene)
STORE-193 Fix: Field sync option "facet" not interpreted correctly (Lucene)
STORE-194 Fix: The field option "indexed" is not interpreted correctly
STORE-195 New: Unable to specify cluster name for Elasticsearch
STORE-196 New: Upgrade Elasticsearch to 1.6.0
STORE-197 Fix: Entity filter graph() not working correctly for statements in named graphs
STORE-200 New: Upgrade Lucene and Solr to 4.10.4
STORE-201 New: Custom analyzers in Elasticsearch are unusable without a way to specify analyzer per field
GraphDB 6.2.2
Highlights:
bugfixes
Storage tool enhancements
GraphDB Engine 6.2.2
Features:
OWLIM-2151 Storage tool discovers wrong page size in the page index and storage files
OWLIM-2199 Storage tool index consistency check - groups statements by flags and compares counts for each index
Bugfixes:
OWLIM-2082 Fix: Inconsistencies in GraphDB collection identified by the StorageTool
GraphDB Workbench 6.5.1
no changes
GraphDB Connectors 4.0.1
no changes
GraphDB 6.2.1
Highlights:
New Transactional Entity Pool
Connectors - major imrovements and new features
Parallel Reasoning in LoadRDF
Workbench - new Import, Export and Repository views
The Lucene connector is now included in GraphDB SE
GraphDB Engine 6.2.1
Features:
OWLIM-1682 Redesign the Entity pool so that it becomes transactional.
A new transactional entity pool has been created. This allows the Connectors to be run in cluster mode.
OWLIM-1810 Parallel inference
The LoadRDF tool now supports parallel (multithreaded) reasoning mode. The improvement of the loading speed is between 25% and 100%, measured on SPB-64m and Wordnet datasets, respectively.
Miscellaneous & bug fixes:
[Enterprise] improved reporting for causes of replication failure
[Enterprise] Detect and report missing master URL
Made plugins aware of whether the entity pool is transactional (the plugins can call EntityPool.isTransactional())
Added fingerprint tracking for the entity pool
StorageTool - the tool is now part of the official documentation. The scan report now says whether the repository image is OK or not, in addition to the number of statements reported for each index
LoadRDF uses lock-free data structure for faster multithreaded inference
LoadRDF - the reverse cache option was removed
GRAP-4 A fix for anomalous query behaviour
OWLIM-2069 Fixed minor memory leak (which was present in OWLIM 5.4 as well)
OWLIM-2086 Fix: The vars of the PluginPattern were not cloned (this potentially leads to a wrong result)
OWLIM-2177 Fix: Inconsistency checks abort the transaction but the statements are still there on further transactions
GraphDB Workbench 6.5.1
Features:
OWLIM-2021 New Import View
the import is now asynchronous and keeps the state between restarts
there are two new ways to import a file - from a text area and from a data URL
native support for chunking + retry for each import
REST endpoints for everything which can be reused by clients
much better UI
OWLIM-2009 Create a new overhauled repository view based on Angular JS with better user experience
rethink the structure of the page so the active location is moved at the top along with the repositories
create a RESTful API that will allow client to do locations management through RESTful endpoints
lazy initialization for repositories
OWLIM-2022 Create a new export view based on Angular JS
Exporting the whole repository should be much more explicit now
The export view now only uses the Sesame endpoints
OWLIM-2087 The import operation now sends the input stream directly to Sesame (instead of uploading a temp file first)
OWLIM-2089 Initialize the repositories as lazily as possible
OWLIM-1643 Fixed: First load of workbench interface is too slow in tomcat
Overall changes:
Removed the same as from the SPARQL view because it was leading to major bugs
~/.owlim-workbench is changed to ~/.graphdb-workbench so previous state in the workbench will be lost. There are changes to the contents of this folder, so a simple copy/rename of the old folder won't work.
Bugfixes:
OWLIM-2146 Fix the label in add repository view to represent the parameters that were mentioned in the documentation
OWLIM-2139 Workbench locks when trying to connect to location which is not currently available
OWLIM-2137 The JMX connection and Sesame discovery don't work on AWS
OWLIM-2120 JMX is not auto-configured properly when we do same container Sesame auto-discovery
OWLIM-2119 Copying/sharing the current query doesn't work properly
OWLIM-2016 Unable to remove/edit query samples from FireFox
OWLIM-2005 Unicode text gets scrambled in SPARQL query window of GraphDB Workbench
OWLIM-1999 Selecting a local location with repositories for another edition makes the UI unusable
OWLIM-1997 The user should be able to change the password if there is no repository selected
OWLIM-1975 Cluster view is not available in the menus
OWLIM-1973 Unable to setup cluster with file location
OWLIM-1964 SPQRQL view should allow users with read only access to make selects to a repository
OWLIM-1963 Unable to SignOut from SPARQL View
OWLIM-1961 Unable to save a long sample query
OWLIM-1959 We shouldn't allow repository locations that are relative directories
OWLIM-1958 Vertical scroll bar is over Save and Copy in the sparql view
OWLIM-1930 Creating a master repository shouldn't result in an exception view but we should just show the repository as a non write repo
OWLIM-1913 Workbench doesn't shutdown the repository manager on Tomcat shutdown
OWLIM-1909 Workbench does not report error properly when it cannot load repository from a remote endpoint
OWLIM-1877 Deleting a repository that is in the currently selected remote location through another place results in inconsistent state
OWLIM-1874 Inferred and explicit statement count are inverted in the popover
OWLIM-1864 There is no proper error message when you connect to a non existing remote location
OWLIM-1826 Restarting the workbench doesn't activate the repository from last time because of NPE
OWLIM-1824 Exception when paging through repository graphs
OWLIM-1823 Workbench does not show additional column in results
OWLIM-1819 Import doesn't support BinaryRDF (.brf)
OWLIM-1785 Unable to get system info if there isn't location selected
OWLIM-1764 Repository size is -1 and the reason is not available
OWLIM-1782 Properly start the workbench if the directory for the location from the last time is missing and cannot be created
OWLIM-1759 Error message appears when deleting a master repository
OWLIM-1647 When the name of the repository is big enough the icons go on the next line and cannot be clicked
GraphDB Connectors 4.0.1
Solr and Elasticsearch now work in a cluster (EE edition only)
Full support for default values: plain literals, literals with a datatype, literals with languages, URIs
Full support for matching literal languages
More control over how data is mapped:
field options more closely reflect the options in Lucene/Solr/Elasticsearch
control over how RDF literals are mapped to Lucene/Solr/Elasticsearch types
Support for many more types of faceting and aggregations in Solr and Elasticsearch, e.g. ranges and histograms
Improvements and extensions to the entity filter
Bug fixes and optimizations
GraphDB 6.1-SP3
This Service Pack 3 build addresses some reported problems with 6.1
GraphDB Engine 6.1-b4371143
OWLIM-1888 Better inference performance for datasets with big number of classes and onProperty restrictions
Fixed a problem where queries containing UNION and BIND were under certain circumstances returning incorrect results
This Service Pack 1 build addresses consistency issue with the GraphDB Storage. The cluster's backup/restore functionality is also fixed.
GraphDB 6.1.8410
extended new cluster backup/restore to support multiple named backups. Important note: the backup now uses a name instead of an absolute folder
fixes for the master URL parameter (autodetected in most cases, thus no need to specify manually)
minor cluster improvements (shutdown on OOM during sync; worker: handling multiple initializations and no reporting of missing fingerprints on init; fixed race condition in replication; new internal URIs (not URLs) for replication)
fixed: [owlim-1853] LoadRDF under Windows sometimes does not include statements in the PSO index and the indexes are incosistent;
Added a check/warning to see if there is enough memory for the entity pool when it gets restored from persistence (-Xmx - cache-memory should be >= entity pool size * 1.25, i.e. 25% overhead is left for the datatype index and other in-memory structures included in the entity pool and for other purposes, e.g. for running queries)
Updates are dispatched to the other peers immediately once accepted and enqueued
dedicated peer dispatch threads
fixed split-brain recovery
Client API: Changed the master retry policy (do not check every master too often; but still make sure that when previously unavailable master becomes available we detect that)
Replication improvements:
cleanup target directory on accepting replication data
60s timeout in replication client
limited retries in the replication server
replication client startup delay patch
retry serving replication data on failure
exposed exceptions thrown from the replication server
Other improvements:
The inferencer debug statistics were not displayed at shutdown because we used the SwitchableInferencer's ones instead of those in currentInferencer that did the job
Created StorageTool app, used to Scan/Rebuild indexes in case of missing statements
Fixes:
[OWLIM-1838] Custom NTriples/NQuads parser: ArrayOutOfBoundsException can be thrown on empty lines while parsing and then NPE while trying to process t.getMessage() which may be null
[OWLIM-1834] Fixed: LoadRDF Tool doesn't work with GraphDB Enterprise
[W-44] Introduced a parameter 'in-clause-max-members' (defaults to 16) which limits the number of entities specified in the IN clause. If the IN clause contains more elements then it won't be optimized to a UNION query
[W-55] Fixed the ASC/DESC issue in ORDER BY clause when the variable in the ORDER BY is in an OPTIONAL clause (the issue was different number of results returned in ASC/DESC cases).
GraphDB version 6.1-RC1
Highlights:
Various stability fixes to the cluster, including proper master shutdown sequence error handling, error-resilient synchronization threads, safe saving of configuration properties of the cluster config. The repository fingerprint now also reflects the number of statements and there is better handling of stress events which happen during transactions & dirty shutdowns (e.g. out of disk space)
Much faster write transactions for small insert/update/delete operations on large repositories. Results on LDBC Semantic Publishing Benchmark (SPB) at 50M went up from 32 read and 12 write queries per second in ver. 6.0 to 40 reads/s and 31 writes/s in ver. 6.1. The improvement gets even more visible and SPB at 1B scale: from 10 reads/s and 2 writes/s in ver. 6.0 to 11 reads/s and 10 writes/s in ver. 6.1. In summary, GraphDB 6.1 is able to handle twice more updates at 50M scale and 5 times more updates at scale of 1 billion statements. This way GraphDB 6.1 is already capable to deal with true Dynamic Semantic Publishing scenario, like the one of BBC, at a scale of 1 billion statements and higher.
See more: http://www.ontotext.com/graphdb-benchmark-results/
Improved load capabilities for large new datasets in live databases instances. Scenario description: there is a production cluster with average load - running LDBC-50m (SPB) with 4 reading threads (doing select queries) and 1 writing thread (doing update queries). We need to add a large dataset (e.g. DBPedia) with hundreds of millions statements – as fast as possible, but without disrupting the overall cluster speed too much (not introducing write latency of more than 1-2s). The data set doesn't need inference, so it is loaded with the empty rule set.
Our implementation introduces a new "magic" statement (u, u, u), where u=<http://www.ontotext.com/useParallelInsertion>. If this statement is inserted in the beggining of the transaction, then the data will be loaded almost twice faster (it reuses parts of the load-chain from LoadRDF tool) and also the engine will temporarily switch the ruleset to 'emtpy'. We found that splitting the data set into 50k chunks is a good compromise between high loading speed and lower latency increase of parallel updates.
Small improvements in the bulk loading tools (LoadRDF). It is possible to load different files into different contexts now, as well as provide Statements programmatically to it. See the page for the LoadRDF for the details. GraphDB-SE LoadRDF tool. These improvements, combined with the increased update speed, allow us to load the English part of DBPedia 2014 (566M statements), in less than an hour at speed of 179 905 statements/sec.
Improvements in GraphDB Workbench: The focus with this release was on security (users, roles) as well as small stability and usability improvements.
This is an integrated release that includes:
GraphDB Engine 6.0.8274
GraphDB Workbench 6.2.3
GraphDB Connectors 3.1.0
GraphDB version 6.0-RC6
This is an integrated release that includes:
GraphDB Engine 6.0.8120
GraphDB Workbench 6.2.2
GraphDB Connectors 3.1.0
GraphDB Engine 6.0.8120
The focus on this release was further improvement of the updates speed on larger transactions (10K+ statements) as well as overall stability.
Improvements:
The transactions are serialized to JSON instead of XML. JSON Streaming parser is used - this minimizes the memory footprint of the master nodes
improved handling of long transactions
bigger transactions are compressed via GZip in the transaction log and when communicated between masters and workers
GZipped updates can be sent via curl; add "Content-Encoding: gzip" header to use them
Rule files can now be specified via HTTP and other protocols instead of local files
Fixes:
Fixed: OWLIM-1610 OOM on the Master with large update (600k statements)
Fixed JMX update statistics
Removed the obsolete Remote Master flag in the replication cluster
Master backup folder moved over under sesame data folder
Fixed Lucene plugin to support Custom Analyzers/Scorers (this was broken on 6.0 releases due to plugin classloader not loading jars from the plugin directory)
[OWLIM-1730] Fixed handling of a failed initialisation within LiteralsPlugin
[OWLIM-1712] Query Optimizer does not apply 'strong' equality within FILTER when bot variables are used as subject of some statement patterns
[OWLIM-1615] Fixed how running queries are handled on shutdown
Improvements to the HA Cluster wrt New Cluster Tests: improved intra-cluster communications, worker initialization, status reporting, improved diagnostics and logging;
Query monitoring via JMX - the full text of the query is now visible
Fixes for the Constraint Violation support & multiple rulesets
Faster update speeds
Now using GraphDB Custom NTriples/NQuads parser by default (so NTriples, NQuad formats are parsed faster than other formats)
when a transaction is using the empty ruleset, the commit can added to all indexes in parallel. In order to use this experiment feature, add the special system statement: _:b <http://owlim.ontotext.com/owlim/useParallel> _:b in the beginning of the transacton. This makes sense for larger transactions (10K statements and above).
Full list of changes:
OWLIM-1628 Added a fix of the issue of not being able to explore a ruleset when the empty ruleset was set initially.
OWLIM-1626 RepositoryException in Worker is not thrown by the Master
OWLIM-1600 Query returns no results when using FILTER and BIND(if(...)) in it.
T-10 Implemented automatic entity pool restore procedure which can recover a truncated entity pool and removes the statements from the repo using the IDs beyond the new entity pool size
OWLIM-1603 Owlim crashes with lock error without obvious reasons (there is no other process that might have locked the repo).
OWLIM-1592 Queries with at least one sub-select which intersect with an ordinary block of statement patterns perform poorly because of multiple clones and transforms of the Sesame's query model to Owlim's one.
OWLIM-1593 Fixed bug in MainQuery.clone() (when using Subselect and there are OPTIONALs)
OWLIM-1572 Query Monitoring - show query text instead of query id
OWLIM-1559 Fixed property path bug when same property paths are repeated in the query
F-320 JMX: NumberOfExplicitTriples and NumberOfTriples shows -1 even though data has been written to the triple store
OWLIM-1563 Fixed the issue with custom ruleset + disable-sameAs=true.
OWLIM-1559 Implemented a shortcut in the MINUS operator which allows for faster calculation when the MINUS is over two subqueries with one triple pattern (which may have filters).
The plugins were moved to <webapps>/openrdf-sesame/WEB-INF/classes/plugins;
Running GraphDB under embedded Tomcat failed with NPE (because of non existing webapps/ folder).
GraphDB version 6.0-RC2 (build 7892)
Improvements:
Added mini LDBC Semantic Publishing Benchmark (http://ldbc.eu) into benchmark/ldbc-spb folder in the distribution;
The plugins are now in <webapps>/openrdf-sesame/plugins folder. Lucene plugin is enabled by default. This could be overwritten by the -Dregister-external-plugins option;
Minor rearrangement of the files in the main distribution folder (all .pie files are put into rules/ subfolder, the scripts into scripts/ subfolder).
Fixes:
Fixed issue with the default/evaluation license;
Fixed issue with the LoadRDF tool.
GraphDB version 6.0 (build 7784)
GraphDB 6.0 is a re-branded Owlim 5.6 version. The differences are given in the last stable Owlim 5.4 release.
Improvements:
High Availability Cluster;
Fast writes in SAFE Mode (OWLIM 5.5 improvement, which lead to incompatible binary formats between 5.4 and 5.5+);
LoadRDF tool for faster bulk loading of data; speeds ~100KSt/s and above, without inference;
Explain Plan like functionality;
LVM-based Backup and Replication.
Fixes:
Databases created with one setting of the "entity-id-size" parameter (32 vs 40-bit) and opened with another setting, would crash in versions prior to 6.0. Now an exception is thrown and the repository is not initialized.
Version 5.6 (build 7713)
Improvements:
[LVM-based Backup and Replication] - Backup can optionally be based on the LVM Shadow Volume Copy - which makes it faster and the worker is released a few seconds after the backup is started (ported from 5.4).
[New Cluster Test (cluster deployment and test tool)] - a tool for automated deployment and testing of clusters of various sizes. Can deploy on AWS and local instances. Supports docker format. Allows for acceptance, stress and load tests to be run on the deployed clusters. Optionally, creates Nagios configuration for the deployed cluster.
LoadRDF tool - a tool for a faster bulk loading of data, which has been merged from 5.5 branch.
Merged EntityPool Reverse Cache from 5.5 - speeds up large updates (100+ statements).
Fixes:
All AcceptanceTests that were previously failing are now fixed:
Improved communication between master and worker nodes with respect to the acceptance tests;
Worker thread: fixed out-of-sync handling upon initialisation;
Improved logging, fixed the skip of some stacktraces by the JVM in particular;
Initialisation of 5.6 worker from 5.4 image now skip "entityIdSize" and InferencerCRC from owlim.properties.
Version 5.6 beta 3 (build 7659)
Fixes:
cluster - empty worker initialisation;
worker - initial update handling;
log sync: 10s wait between idle rounds (network bandwidth optimisation);
Tx log: initialisation bug fixed;
update might fail when replication is in progress;
miscellaneous bug fixes in the cluster utils (deployment/status) and proxies restart;
detailed logging:
replication cluster worker events;
HTTP client stats;
Tx log initialisation.
Known issues:
AcceptanceTests failing: W4, M4, MW3, MW7, MW8;
the new/experimental LVM backup/restore feature is not yet ported from 5.4 (and thus MW10 and MW11 Acceptance Tests are not implemented, because they are based on it).
Version 5.6 beta 2 (build 7523)
Fixes:
updated AcceptanceTests in the MastersAndWorkers section;
replication start/wait methods improved;
several fixes to the TxLog protocol;
fixed replication logic to delete the Worker repo, only when the remote worker confirms the replication;
additional sanity checks added to the Master-to-Master and Master-to-Worker synchronisation;
improved logging, incl. "SPLITBRAIN" events logged both to logs and to JMX.
Known issues:
some MW* tests with the forced replication fail randomly, but rarely - related to the Proxy tool.
Version 5.6 beta 1 (build 7368)
Ontotext redesigned its cluster architecture to support the case of two or more separate data centres (each with its own Master and Worker nodes), and to provide asynchronous transactions and Master fail-over. OWLIM Enterprise already supported Master-Worker clusters with Automatic Replication, Load-balancing and Transaction Logs, but in this release these components are improved. OWLIM 5.6 is based on 5.5 and inherits its write performance improvements.
[OWLIM56:Client Fail-over Utility], which can be configured to fallback to the next master, if the first master becomes unavailable;
Better TransactionLog support (see: [OWLIM56:Transaction Log Improvements]) - the updates are synchronised between all masters in all data centers;
All Masters are now Read/Write;
[OWLIM56:Smart Replication];
Protocol backwards compatibility - the ability to upgrade the OWLIM cluster without downtime, following the OWLIM Upgrade Procedure;
[External Plug-ins] - the plugins in OWLIM are moved into a separate plugin directory, and now can be upgraded/maintained separately.
Known issues:
Transaction consistency concern. In the new cluster, the Master responds to an update from a client as soon as the test node completes it.
In a single threaded scenario the next query can be evaluated on a node that still has either not received it or not completed it which could lead to inconsistency from the client application point of view. This deviates from the update processing in 5.4, where the response is created after the last of available nodes completes it[OWLIM-1483].