[ http://issues.apache.org/jira/browse/DERBY-646?page=all ]

Stephen Fitch updated DERBY-646:
--------------------------------

    Attachment: in-memory.tar
                svn.diff

I currently have an in-memory implementation of the storage factory interface 
"working" with the embedded client. It requires a very minimal change to one 
existing class and the addition of 6 more.

It's easily plugged into the embeded client with 
-Dderby.subSubProtocol.memory=org.apache.derby.impl.io.MemoryStorageFactory, 
but I'm still trying to work out how to get it going with the network server. 
(use jdbc:derby:memory:<database;attributes> as connection url)

MemoryStorageFactory - In-memory implementation of StorageFactory

MemoryStorageFile extends InputStreamFile - wraps most calls to another class 
with a hashtable keyed by full filepath names

MemoryStorageRandomAccessFile - extends java.io.RandomAccessFile and overrides 
its' read, write and native methods.

DynamicByteArrayIOStream - Readable, writable dynamically accessible byte 
array. This was done because I didnt want to have to implement the DataInput 
and DataOutput interfaces specified by the StorageRandomAccessFile interface 
(which would have been just copying them from java.io.RandomAccessFile).  It is 
by no means an optimal implementation, but it works.

DynamicByteArrayIOStreamFile - the class above extended with file attributes 
(ex: do I exist, am I a directory).

MemoryMetadata - generalized location for StorageFile paths and 
DynamicByteArrayIOStreamFile objects. Also

The naming convention is debatable and as this is still a work in progress can 
be changed.

Any and all suggestions welcome :)

> In-memory backend storage support
> ---------------------------------
>
>          Key: DERBY-646
>          URL: http://issues.apache.org/jira/browse/DERBY-646
>      Project: Derby
>         Type: New Feature
>   Components: Store
>  Environment: All
>     Reporter: Stephen Fitch
>  Attachments: in-memory.tar, svn.diff
>
> To allow creation and modification of databases in-memory without requiring 
> disk access or space to store the database.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to