View Issue Details

IDProjectCategoryView StatusLast Update
0000360LDMud 3.3Implementationpublic2005-05-15 15:02
Reportermenaures Assigned Tolars 
Status closedResolutionfixed 
Fixed in Version3.3 
Summary0000360: max-mapping-size: offer separate key/width limits

in LDMud 3.2, we use the same limit for array and mapping size. This is to ensure that array <-> mapping conversions (mkmapping(), unmkmapping(), m_indices(), ...) are always applicable for all mappings and arrays without worrying about runtime errors because of exceeded size limits.

In 3.3, we have to continue to support mappings with the number of keys (5000) we had in 3.2, and these mappings have some width as well, so we have to go with a max-mapping-size of 30000 or whatever. However, this way mappings with a smaller width may have many more keys, so m_indices() or whatnot will raise an error if it gets such a mapping. This is bad, so we have to raise the array limit accordingly (to 30000). However, even if we do that, the next piece of code which uses mkmapping(({arr1, arr2})) or suchlike will break because now it may get arrays which are too big to be allowed to build a mapping with.

If we want to keep the old safe behaviour the only solution I see is to offer an alternative to the current max-mapping-size limit in 3.3, that allows to restrict number of keys and width of a mapping separately.
TagsNo tags attached.



2005-02-21 00:01

reporter   ~0000343

Implemented in 3.3.677: I don't think an extra limit for the width is required, though.

Issue History

Date Modified Username Field Change
2005-01-31 20:19 menaures New Issue
2005-02-21 00:01 lars Status new => resolved
2005-02-21 00:01 lars Fixed in Version => 3.3
2005-02-21 00:01 lars Resolution open => fixed
2005-02-21 00:01 lars Assigned To => lars
2005-02-21 00:01 lars Note Added: 0000343
2005-05-15 15:02 lars Status resolved => closed