History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: COR-742
Type: Sub-task Sub-task
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Carl Rosenberger
Reporter: Carl Rosenberger
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
db4o Core
COR-113

FastCollections: Marshalling spike, one string field

Created: 30/Jul/07 09:25 PM   Updated: 21/Aug/07 03:10 PM
Component/s: None
Affects Version/s: None
Fix Version/s: None

Time Tracking:
Original Estimate: Not Specified
Remaining Estimate: 0h
Time Spent - 26h
Time Spent: 26h
Time Spent - 26h

Peers: Andrew Zhang
Order: 2
Iteration: 4
Original IDS Estimate: 4
Resolution Date: 21/Aug/07 03:10 PM
Labels:
Participants: Carl Rosenberger
Number of Attachments: 0
Number of Comments: 1


 Description  « Hide
The goal of this task is to store one object with a string field with new improved marshalling and to read it again using existing logic.

Instead of the current setup that first calculates the needed length for an object and then writes into a single write buffer in different places, we will try to use two buffers, one for the fixed length data at the beginning of the object, one for variable length data.

With full completion of this task ideally the following methods in TypeHandler4 can be done by one single marshall method:
- boolean hasFixedLength();
- int linkLength();
- void calculateLengths(Transaction trans, ObjectHeaderAttributes header, boolean topLevel, Object obj, boolean withIndirection);
- Object write(MarshallerFamily mf, Object obj, boolean topLevel, StatefulBuffer buffer, boolean withIndirection, boolean restoreLinkOffset);

There is a very nice performance advantage of changing marshalling: Reflection on write only has to happen once.

 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Carl Rosenberger - 21/Aug/07 03:10 PM
closed, because of the goal of the spike has been reached, the Interface for TypeHandler4 is available.