ESE/ESENT Database Stuff

ManagedEsent 1.6 released. LINQ support for PersistentDictionary.

There is a new release of ManagedEsent on Codeplex. There are some new APIs, bugfixes and...

Author: Laurion Burchall Date: 02/15/2011

ESENT Multivalue tutorial

Multivalued columns can be very useful for simplifying data schema and improving performance, but...

Author: Laurion Burchall Date: 06/03/2010

Using ManagedEsent from F#

Cameron Taggart has a blog entry on using ManagedEsent from F#:...

Author: Laurion Burchall Date: 03/02/2010

Version 1.5 of ManagedEsent released. PersistentDictionary goodness

There is a new release of ManagedEsent on Codeplex. There are some new APIs, constants for the new...

Author: Laurion Burchall Date: 09/12/2009

6 New ESENT features in Windows 7

A quick look at some of the new features that are available in the Windows 7 version of ESENT....

Author: Laurion Burchall Date: 08/18/2009

Multimethods in C# 4.0 with 'dynamic'

(Continuing from the post on implementing the Visitor pattern in C# 4.0) A virtual method is...

Author: Laurion Burchall Date: 08/13/2009

Implementing the Visitor pattern with the 'dynamic' feature of C# 4.0

A lot of the talk around the new dynamic keyword in C# 4.0 (available in the beta of Visual Studio...

Author: Laurion Burchall Date: 05/28/2009

Kobe - the Web 2.0 application that wasn't

Microsoft has released Kobe, "a getting started resource kit for planning, architecting, and...

Author: Laurion Burchall Date: 04/17/2009

iiobo C++ ESE library

(I saw a link to this from the Wikipedia entry on esent) A company called iiobo has released a C++...

Author: Laurion Burchall Date: 04/06/2009

Version 1.2 of ManagedEsent available on CodePlex

Version 1.2 of the ManagedEsent interop layer for the ESENT database engine is now available on...

Author: Laurion Burchall Date: 04/06/2009

Why does JET_coltypBit return 0xFF when set to true?

On our internal mailing list a user asked "When I retrieve a column of type JET_coltypBit that is...

Author: Laurion Burchall Date: 04/01/2009

Unsigned considered harmful

(or is "xxx considered harmful" completely worn out as a meme?) I believe that, in general, people...

Author: Laurion Burchall Date: 03/26/2009

What does a failing Assert() mean?

When an assert goes off what does it mean? In the codebases I work in, a failing assert doesn't...

Author: Laurion Burchall Date: 03/01/2009

Immutable objects in Fluent Interfaces: a lesson from Functional Programming

Fluent interfaces are a nice way of building up an API which reads very nicely. Chaining methods...

Author: Laurion Burchall Date: 02/16/2009

Cheaply estimating the number of records in a table

Counting the number of records in a table can be extremely expensive, as it requires reading all the...

Author: Laurion Burchall Date: 02/10/2009

A dbm-like interface for Esent on IronPython

I've wanted to be able to use Esent as a simple, fast, reliable and persistent key/value store. The...

Author: Laurion Burchall Date: 01/12/2009

A C++ Refactoring Trick for "Encapsulate Field"

I was working on some old code that had a structure that looked like this struct Foo { bool...

Author: Laurion Burchall Date: 01/08/2009

Memcmp in C#

I confess that, for some years now, I've wondered what the managed equivalent of memcmp() was,...

Author: Laurion Burchall Date: 01/01/2009

Inserting a record does NOT move the cursor

Inserting a record into a table doesn't change the location of the JET_TABLEID used to insert the...

Author: Laurion Burchall Date: 01/01/2009

Ayende's DivanDB (also, is esent the most widely used database engine?)

Besides providing lots of great input on the new managed layer, Ayende Rahien has found time to...

Author: Laurion Burchall Date: 12/23/2008

Managed interface to Esent released

I just published the first release of the Esent .NET managed interface on Codeplex....

Author: Laurion Burchall Date: 12/22/2008

Some basic ESENT performance measurements

I was reading a performance whitepaper about another embedded database engine and decided to write a...

Author: Laurion Burchall Date: 11/07/2008

ESENT technology explained through Wikipedia

(All links go to the named Wikipedia article) ESE/ESENT is an embedded database engine providing...

Author: Laurion Burchall Date: 10/29/2008

My post on the Windows SDK blog

Although the ESENT API has been available in the Windows SDK for several years, I don't think enough...

Author: Laurion Burchall Date: 10/23/2008

Belated Introduction

Who: I'm Laurion Burchall, a Software Engineer on the Ese/Esent team. What: A blog about the Esent...

Author: Laurion Burchall Date: 10/21/2008

Remember - JetRollback can close cursors

This is an ESENT programming error I've made a few times, watch out for this pattern:JET_TABLEID...

Author: Laurion Burchall Date: 10/19/2008

Creating a table opens it exclusively

Any ESENT API which creates a table (JetCreateTable, JetCreateTableColumnIndex,...

Author: Laurion Burchall Date: 05/22/2007