[ 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