Fix for AutoIncrement when used in a base class. Updated LINQPad driver for new LinqPad version
Placement fix, use IOptimizedPersistable.PlacementDatabaseNumber if overridden to return something other than Placement.DefaultPlacementDatabaseNumber. Fix for an [UseOidShort] issue.
Guard against setting property values to null (instead remove Edge/Vertex property value) and add IOptimizedPersistable as a property type choice. Handle errors better on server side. Now removing objects from indices when deleting a database.
Fix a bug in BTree code causing null pointer exceptions. Thanks Tony for the test case!
Enable
object caching by default (Make CacheEnum.Yes default in session constructors)
and release all cached objects when a cached database is not up to date
(updated by another session). This can have a dramatic impact on performance.
One client saw elapsed time go from 15 minutes to 4 s.
Add support for nullable struct types such as Guid?
Fix
of Traverse in VelocityGraph and added a new sample for VelocityGraph named
SupplierTracking.
Fix for comparison of directory path for DatabaseLocation (with / or \ as separators and case insensitive).
Added SessionBase.Compact() (not yet implemented for ServerClientSession). Improved handling of Unpersist – now updates AutoPlacement so that slot is reused when a new objects of the same type is persisted. Updated license check.
Added support for updating database locations after moving databases to a new directory/host with ServerClientSession
Added
untested versions of VelocityDB.dll for iOS and Android. The names of these
added DLLs are: VelocityDBiOS.dll and VelocityDBAndroid.dll. They are part of
the normal download, placed in installation folder. Do license check only when
updating database schema. This enables deployment without a license database
(4.odb). Updated User’s Guide describing this for deployments.
Allow changing tcp/ip port number used with VelocityDBServer.
Added optional bool signalError = true parameter to SessionBase.NewDatabase.
Add SessionBase option for using String.Intern to save memory. Refresh some cached FileInfo to better handle deleted files
Fix for SessionBase.UpdateClass and updated UpdateClass sample application
Fixed
and updated FacebookGraph (VelocityGraph) sample application
Fix
transaction log persist bug
Add
SessionBase.OfType and Database.OfType as a non-template complement to
AllObjects<T>.
Add
more log data for server logging and some rearrangement of acquire read/update
locks in server.
Add
BTreeBase.GetKeyId and BTreeMapBase.GetValueId as requested.
Added
a LINQPad driver for VelocityDB. It still has some limitations but see it as a
preview. Feedback is welcome. Added information about LINQPad driver to User's Guide
Fix Vertex.Traverse bug and add more optional parameters.
Server was missing in installer of 3.18.2 until today November 7, 2014. Sorry!
Added more optional parameters to Vertex.Traverse.
(Download was not available the first days due to an ftp issue to hosting server, sorry!)
Fix for VelocityGraph Traverse and added a parameter includedVertices.
[AutoIncrement] field attribute added. Use it to automatically get a unique number (sequence from 1 normally) generated for every instance of a class to be stored in a field within a class, such as in:
public class Person : OptimizedPersistable
{
string firstName;
string lastName;
ushort age;
UInt64 idNumber;
Person bestFriend;
[AutoIncrement]
UInt64 autoIncrement;
SortedSetAny<Person> friends;
For ServerClientSession, only invalidate pages updated by another transaction instead of invalidating an entire Database. Updated session constructor parameter.
Fix directory compare and transaction id increment in VelocityDBServer.